这篇讲 数据的修改和数据的删除
想了解 如何插入数据 的朋友
请移步至上一篇博客:数据的插入
一、修改
使用UPDATE语句,语法格式如下:
UPDATE 表名
SET 字段名=表达式1[,字段名2=表达式2...]
[WHERE 条件];
- 一次可以修改多个值,用逗号隔开
- WHERE 子句用于选择要修改的记录,若没有该语句,则表示修改所有记录
举几个栗子:
1. 要求:把学生马东的学号改成S006(该表为stuinfo表)
代码如下:
UPDATE stuinfo
SET stuno='S006'
WHERE stuno='S003';
2.要求:把所有的学生的成绩+1(credit列)(该表为 stucourse表),代码如下:
UPDATE stucourse
SET credit=credit+1;
3.要求把stumarks表中的学号为“S001”的学生的成绩+5分,代码如下:
UPDATE stumarks
SET stuscore = stuscore+5
WHERE stuno='S0001';
二、删除
1. DELETE 语法格式
DELETE FROM 表名 [WHERE 条件];
- WHERE子句用于选择要删除的记录,若没有WHERE子句,则删除所有记录。
- 先删除子表中的相关记录,再删除父表中的记录。
2.TRUNCATE 语法格式
TRUNCATE [TABLE] 表名;
- 此语句可以删除表中的所有记录。
- 不管子表是否为空表,父表中的记录都不能用TRUNCATE语句删除。
依旧是举几个栗子
1.要求把学号为S001的学生信息删除(该表为stuinfo表) ,代码如下:
DELECT FROM stuinfo WHERE stuno ='S001';
2.要求:删除stucourse表中的所有记录,代码如下:
DELECT FROM stucourse;
有么有发现趴菜我列出另个删除语句,在举例子的时候只用了一个?
下面 讲讲两者之间的区别
3. DELETE 语句与TRUNCATE语句的区别
(1) DELETE语句后面可以跟WHERE子句,通过指定WHERE子句中的条件表达式,删除满足条件的部分记录,而TRUNCATE语句只能用于删除表中的所有记录。
(2) TRUNCATE语句的执行效率比DELETE语句高,且,用TRUNCATE语句删除的数据无法恢复。
(3)使用TRUNCATE语句删除表中的所有记录,并且再向数据表插入记录时,自动增加字段的值重新开始计算,默认的初始值为1;使用DELETE语句删除表中的所有记录,并且再向数据表插入记录时,自动增如字段的值为删除记录时该字段的最大值加1。
over~