DML 操作表中数据
2021-12-04 本文已影响0人
我是Msorry
插入数据
insert into 表名 (字段名1, 字段名2...) values(字段值1, 字段值2...);
方式1: 插入全部字段, 将所有字段名都写出来
INSERT INTO student (sid,sname,age,sex,address) VALUES(1,'孙悟空',20,'男','花果山');
方式2: 插入全部字段,不写字段名
INSERT INTO student VALUES(2,'猪八戒',20,'男','高老庄');
方式3:插入指定字段的值
INSERT INTO student (sname) VALUES('沙和尚');
注意
- 值与字段必须要对应,个数相同&数据类型相同
- 值的数据大小,必须在字段指定的长度范围内
-
varchar
、char
、date
类型的值必须使用单引号包裹 - 如果要插入空值,可以忽略不写,或者插入
null
- 如果插入指定字段的值,必须要上写字段名
更改数据
语法格式1:不带条件的修改
update 表名 set 列名 = 值;
UPDATE student set address = '天庭';
语法格式2:带条件的修改
update 表名 set 列名 = 值 where 字段名 = 值;
UPDATE student set address = '天庭' WHERE sname = '猪八戒';
UPDATE student SET age = 30,address = '流沙河',sid = 3, sex = '男' WHERE sname = '沙和尚';
删除数据
删除所有数据
delete from 表名;
truncate table 表名;
删除所有数据有两种删除方式
-
delete from 表名;
有多少条记录,就执行多少次删除操作,效率低,不推荐,删除的数据有可能恢复 -
truncate table 表名;
先删除整张表,然后再重新创建一张表结构一样的表,效率高,删除的数据无法恢复
当一个表中条数非常多,又要做删除动作的时候,如果用delete
会很慢,可以使用truncate
指定条件 删除数据
delete from 表名 where 字段名 = 值;
DELETE FROM student WHERE sid = 1;