MySQL数据库14——更新和删除数据
SQL里面使用UPDATE更新数据,删除使用DELETE语句。
Mysql要修改一下设置,才能更新:
在左上角菜单栏里面选择偏好栏,取消下面这个红框的勾选
更新单个字段的数据
如果运行环境为MySQL 则使用以下语句进行备份。
CREATE TABLE student_1 AS
SELECT * FROM student;
例 在student表中,将名叫“张三”的学生的联系方式1更改为“010-81234567”。
UPDATE student_1
SET contact1='010-81234567'
WHERE name='张三';
更新多个字段的数据
在student表中,将所有计科系学生的所属院系值更改为“计算机系”,联系方式2改为“0471-6123456”。
UPDATE student_1
SET institute='计算机系', contact2='0471-6123456'
WHERE institute='计算机学院';
使用子查询更新数据
在UPDATE语句的WHERE子句中,可以使用子查询选择需要更新的记录。利用其这一特点,UPDATE语句可以基于其它表中的数据进行更新。
例 在score表中,在每个学生“心理学”的考试成绩上都增加2分。
UPDATE score SET result1=result1+2
WHERE c_id=(SELECT ID FROM course WHERE course='心理学');
使用表连接更新数据
实际上,在UPDATE语句中还可以使用FROM子句。通过FROM子句和WHERE子句配合,可以进行多表连接,就是说在UPDATE语句中可以通过多表连接进行数据更新。下面通过例题说明使用表连接更新数据的方法。
例 在score表中,将每个学生“心理学”的考试成绩减2分,将其还原为更新前的分数。
UPDATE score AS s,course AS c
SET s.result1=s.result1-2
WHERE c.course='心理学' AND s.c_id=c.ID;
使用UPDATE语句删除指定字段的数据
UPDATE语句除了更新数据以外,还有一个作用,即删除指定字段的数据。其实,所谓的删除,只是使用NULL值替换原有的字段值而已。
注意:用NULL值替换字段值时,首先必须保证该字段可以为空,否则会出现错误。
例 在student表中,将所有外语系学生的联系方式2的值删除。
下面的语句用于删除所有外语系学生的联系方式2。
UPDATE student_1
SET contact2=NULL
WHERE institute='外语系';
删除表中的数据
使用DELETE语句删除指定记录
首先,必须清楚一点,使用DELETE语句删除的是整行记录,而并非是记录中的某个字段值。下面是DELETE语句的语法格式。
DELETE FROM 表名
WHERE 条件表达式
其中,DELETE FROM指定要从哪个表删除数据,WHERE用于设置删除记录的条件。即DELETE语句从表中删除那些满足WHERE子句条件的所有记录。当省略WHERE子句时,DELETE语句删除表中的所有记录。
下面通过例题介绍DELETE语句的使用方法。
例 从student_1表,删除名叫“孔乙己”的学生的记录。
DELETE FROM student_1
WHERE name='孔乙己';
DELETE语句可以删除多条记录,例如下面的例子所示。
例 从student_1表,删除所有所属院系为NULL的记录
DELETE FROM student_1
WHERE institute IS NULL;
通过视图更新表数据
下面使用一个例子介绍通过视图更新数据的方法。
首先创建一个可更新的视图:
CREATE VIEW vw_update AS SELECT *FROM student
WHERE institute='计算机学院'
WITH CHECK OPTION;
查看:
SELECT * FROM vm_update
例 通过视图vw_update将学生“杨九”的来源地更新为“重庆市”。
UPDATE vw_update
SET origin='重庆市'
WHERE name='杨九';
通过本例可以知道,使用视图更新数据和直接更新表中数据的方法是相同的,只是将表名改为视图名即可。通过视图vw_update更新数据还有个好处,那就是只能更新“计算机学院”的学生信息,而不能更新其它院系的学生信息,这也是使用视图更新数据的目的。
通过视图删除表数据
下面使用一个例题介绍通过视图删除数据的方法。
例 通过视图vw_update,将来源地为NULL的学生删除。
DELETE FROM vw_update
WHERE contact1 IS NULL;
查看
看student表的内容会发现,刚才只是删除了视图中可见的数据,而并没有删除在视图中看不到的记录。
通过本例可以知道,使用视图删除数据和直接删除表中数据的方法是相同的,只是将表名改为视图名即可。通过视图删除数据和通过视图更新数据一样,只能删除所能看到的记录数据,而不能删除无法看到的数据。
相关文章:
MySQL数据库14——更新和删除数据
SQL里面使用UPDATE更新数据,删除使用DELETE语句。 Mysql要修改一下设置,才能更新: 在左上角菜单栏里面选择偏好栏,取消下面这个红框的勾选 更新单个字段的数据 如果运行环境为MySQL 则使用以下语句进行备份。 CREATE TABLE stu…...
Java面试——MyBatis篇
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
C++的 new 和 delete
文章目录一、new 和 delete 的使用二、operator new 和 operator delete 函数三、new 和 delete 的实现原理四、申请空间和释放空间应配套使用五、定位 new 表达式六、malloc/free 和 new/delete 的区别C语言的动态内存管理函数(malloc、calloc、realloc、free) 虽然可以继续在…...
MySQL 事务原理
文章目录1、事务1.1、ACID 特性1.1.1、原子性undo log1.1.2、一致性1.1.3、* 隔离性1.1.4、持久性redo log1.2、事务控制语句2、隔离级别2.1、隔离级别的分类2.1.1、读未提交 RU2.1.2、读已提交 RC2.1.3、可重复读 RR2.1.4、串行化 SC2.2、并发事务读异常2.2.1、* 脏读2.2.2、*…...
软件测试面试自我介绍/项目介绍居然还有模板?我要是早点发现就好了
目录 1、自我介绍 2、项目介绍 2.1、最全电商项目介绍 2.2、电商项目介绍 2.3、在线教育项目介绍 2.4、互联网金融项目介绍 总结 1、自我介绍 以XXX简历来举例(参照下面的案例,编写你的自我介绍,框架就是:我是谁࿰…...
new RegExp的使用
1.RegExp是什么 当检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp 就是这种模式 RegExp 对象用于存储检索模式。 var patt1new RegExp("e");当使用该 RegExp 对象在一个字符串中检索时,将寻找的是字符 “e” g :表…...
供应商管理软件如何选型 好用的供应商管理软件推荐
供应商管理是采购中的重要环节。对于很多企业来说,做好内部供应商管理就能在行业竞争中提升自身的效益与竞争能力,供应商已成为一种战略筹码。 但在企业进行供应商管理过程中,往往会遇到供应商信息数据收集不全、等级划分不合理、绩效评价机…...
Python3遍历文件夹提取关键字及其附近字符
要求: 1,遍历文件夹下所有的.xml文件 2,从.xml文件中提取关键字以及左右十个字符 3,输出到excel 一:遍历文件夹找到所有xml文件及其路径 for root, dirs, files in os.walk(self.inputFilePath):for file in files:…...
「1」线性代数(期末复习)
🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 第一章 行列式 行列式是一个数,是一个结果三阶行列式的计算:主对角线的乘…...
C++7:STL-模拟实现vector
目录 vector的成员变量 构造函数 reserve size() capacity() push_back 一些小BUG 赋值操作符重载 析构函数 【】操作符重载 resize pop_back Insert 迭代器失效 erase 二维数组问题 总结一下 vector,翻译软件会告诉你它的意思是向量,但其…...
笑死,面试官又问我SpringBoot自动配置原理
面试官:好久没见,甚是想念。今天来聊聊SpringBoot的自动配置吧? 候选者:嗯,SpringBoot的自动配置我觉得是SpringBoot很重要的“特性”了。众所周知,SpringBoot有着“约定大于配置”的理念,这一…...
分布式缓存服务DCS-企业版性能更强,稳定性更高
背景介绍 近年来,随着各行业业务需求急速增加,数据量和并发访问量呈指数级增长,原来只能依附于关系型数据库的传统“缓存”逐渐难以支撑上层业务,开源Redis也面临着如“容量有限”、 “可靠性有限”、 “数据重复拷贝,…...
HTTP基本原理
目录URL简单定义格式HTTP和HTTPSHTTP的请求过程。请求响应响应体HTTP2.0总结URL 简单定义 通过一个链接,使我们可以找到网络上的某个资源,这个链接就是URL。 格式 URL并不是随便写的,而是有固定的格式。基本的组成格式如下。 schme://[us…...
【云原生】Kubernetes(k8s)最新版本详细保姆级安装教程
前言 Kubernetes简称k8s,是一个开源的,用于管理云平台中多个主机上的容器化的应用,k8s目标是让部署容器化的应用简单并且高效,k8s提供了应用部署,规划,更新,维护的一种机制。 本文是总结了在安…...
JVM - 类加载,连接和初始化
目录 类加载和类加载器 概述 类加载要完成的功能 加载类的方式 类加载器 类加载器的关系 类加载器说明 双亲委派模型 工作过程如下: 双亲委派模型说明: 破坏双亲委派模型: 类连接和初始化 类连接主要验证的内容 类连接中的解析…...
[carla]关于odometry坐标中的角度坐标系 以及 到地图的映射问题
1.获取车辆的Odometry原始信息 在carla中,通过订阅/carla/ego_vecle/odometry 可以查看车辆的全局位置信息,例如: > header: seq: 118872stamp: secs: 5946nsecs: 5720187frame_id: "map" child_frame_id: "ego_vehicle" pos…...
Python 正则表达式
正则表达式主要用来查找和匹配字符串的。 一、正在表达式基础 字符 描述 示例 TIY\ 示意特殊序列(也可用于转义特殊字符)如:空白字符 "\s" . 任何字符(换行符除外) "he..o" ^ 起始于 "^h…...
spark03-读取文件数据分区数量个数原理
代码val conf: SparkConf new SparkConf().setMaster("local").setAppName("wordcount")val sc: SparkContext new SparkContext(conf)val rdd: RDD[String] sc.textFile("datas/1.txt",2)rdd.saveAsTextFile("output")数据格式 &a…...
操作系统(day08)内存
存储单元 内存的几个基本概念 存储单元 内存地址从0开始,每个地址对应一个存储单元 存储单元大小根据计算机按照什么方式编址 按字节编址 则每个存储单元大小为一字节,即1B,即8个二进制位按字编址 看这个计算的字长是多少位,如…...
11- 聚类算法 (KMeans/DBSCAN/agg) (机器学习)
聚类算法 聚类算法和降维算法那都属于无监督算法。KMeans 是以一个值为中心, 然后所有其他点到该点距离最小值的累积和。 kmeans KMeans(n_clusters3) # n_clusters 分类数量 kmeans.fit(data.iloc[:,1:]) # 无监督,只需要给数据X就可以 DBSCAN 算法是…...
日日顺供应链|想要看清供应链发展趋势,先回答这三个问题
技术变革如何支撑供应链及管理服务的发展? 数字化与科技化开始承托供应链管理能力的升级与变革? 如何从客户需求的纬度反推供应链及管理服务的模式变革?在过去的三年中,我国的供应链企业经受了最为极端的挑战,但当下&a…...
5守护进程与线程
进程组 多个进程的集合,第一个进程就是组长,组长进程的PID等于进程组ID。 进程组生存期:进程组创建到最后一个进程离开(终止或转移到另一个进程组)。与组长进程是否终止无关。 一个进程可以为自己或子进程设置进程组 ID 相关函数 pid_t …...
EZ-Cube简易款下载器烧写使用方法
一、硬件连接 跟目标芯片接4根线 VCC、GND、TOOL、REST 四根线,如果板子芯片自己外接电源的,VCC 线可以不接。 二、 安装烧写软件和驱动 烧写软件:https://download.csdn.net/download/Stark_/87444744?spm1001.2014.3001.5503 驱动程序&a…...
sql server安装并SSMS连接
博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞ÿ…...
Python_pytorch (二)
python_pytorch 小土堆pytotch学习视频链接 from的是一个个的包(package) import 的是一个个的py文件(file.py) 所使用的一般是文件中的类(.class) 第一步实例化所使用的类,然后调用类中的方法(def) Torchvision 数据集 数据集使用(CI…...
java手机短信验证,并存入redis中,验证码时效5分钟
目录 1、注册发送短信账号一个账号 2、打开虚拟机,将redis服务端打开 3、创建springboot工程,导入相关依赖 4、写yml配置 5、创建controller层,并创建controller类 6、创建service层,并创建service类 7、创建工具类&#x…...
kubectl命令控制远程k8s集群(Windows系统、Ubuntu系统、Centos系统)
文章目录1. 本地是linux2. 本地是Windows1. 本地是linux 安装kubectl命令 法一:从master的/usr/bin目录下拷贝kubectl文件到本机/usr/bin目录下法二:GitHub下载kubectl文件 在家目录下创建.kube目录config文件 法一:将master上对应用户的~/.…...
【求解器-COPT】COPT的版本更新中,老版本不能覆盖的问题
【求解器-COPT】COPT的版本更新中,老版本不能覆盖的问题方法1方法2如果license还是找不到作者:刘兴禄 参考网址: COPT的下载和配置步骤如下: 教程 | Windows系统下如何安装COPT求解器并配置许可文件: https://zhuan…...
Vue3.0文档整理:一、简介
1.1:什么是vue? Vue是一款用于构建用户界面的javascript框架;它基于标准HTML、CSS和Javascript构建,并提供了一套声明式、组件化的编程模型,帮助你高效的开发用户界面。 1.2:MVVM工作原理 MVVM指的是model、view和vie…...
vue2 diff算法及虚拟DOM
概括:diff算法,虚拟DOM中采用的算法,把树形结构按照层级分解,只比较同级元素,不同层级的节点只有创建和删除操作。 一、虚拟DOM (1) 什么是虚拟DOM? 虚拟 DOM (Virtual DOM,简称 VDOM) 是一种…...
越秀网站建设设计/河北关键词排名推广
初始化 1、从list初始化一个ndarray arr np.array([1, 2, 3]) #list转ndarry li arr.tolist() #ndarry转list print(type(arr),type(li))<class numpy.ndarray> <class list>2、通过内置函数初始化 arr np.zeros((2, 3)) #初始化一个2*3的元素…...
网站app建设需要资源/广州seo服务公司
脚本编程知识点:3、脚本配置文件/etc/rc.d/init.d/服务脚本服务脚本支持配置文件:/etc/sysconfig/服务脚本同名的配置文件4、局部变量local VAR_NAME5、命令mktemp创建临时文件或目录mktemp /tmp/file.xx-d:创建为目录6、信号kill -SIGNAL PI…...
如何搭建一个网站步骤/什么是引流推广
1.jquerymobile的引用 略 2.引用后,页面跳转后,自己的js无法执行,需刷新。解决:在上个页面链接跳转出加:data-ajax"false" 3.data-prefetch"false"的使用转载于:https://www.cnblogs.com/wuchao/a…...
wordpress 3.9 编辑文章 固定链接 不能编辑/宁波公司做网站
订单表 (order) |-- 自动编号(order_id, 自增长主键) |-- 订单单号(order_no, 唯一值,供客户查询) |-- 商店编号(shop_id, 商店表自动编号) |-- 订单状态 (order_status,未付款,已付款,已发货,已…...
佛山建设外贸网站/云seo关键词排名优化软件
一、什么是队列 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out)规则。 入队列:进行插入操作的一端称为队尾。 出队列:进行删除操作的一端称为…...
做外汇看什么网站/9个成功的市场营销案例
瞌睡龙 2013/05/20 18:370x00 相关背景介绍Clickjacking(点击劫持)是由互联网安全专家罗伯特汉森和耶利米格劳斯曼在2008年首创的。是一种视觉欺骗手段,在web端就是iframe嵌套一个透明不可见的页面,让用户在不知情的情况下&#…...