DML 是对于表中的记录进行增删改操作
一、添加数据
语法格式:
insert into 表名[字段名] values[字段值]
表名:表示往那张表中添加数据
(字段名1,字段名2,...):要给哪些字段设置值
values(值1,值2,...):设置具体的值
1、插入全部字段
① 所有的字段名都写出来
INSERT INTO 表名 (字段名 1, 字段名 2, 字段名 3…) VALUES (值 1, 值 2, 值 3);
② 不写字段名,默认为全部字段名
INSERT INTO 表名 VALUES (值 1, 值 2, 值 3…);
2、插入部分数据
INSERT INTO 表名 (字段名 1, 字段名 2, ...) VALUES (值 1, 值 2, ...);
Tips:没有添加数据的字段会使用 NULL
3、注意事项
① 插入的数据应与字段的数据类型相同
② 如果表名后没有定义列名,则默认给所有列添加值
③ 除了数字类型,其他类型需要使用引号(单引号或双引号)引起来
④ 数据的大小应在列的规定范围内,如:不能将长度为20的放入长度为10的列中。
⑤ 不指定列或使用 null,表示插入空值
4、
5、
6、
二、修改数据
语法格式:
update 表名 set 列名=值 [where 条件表达式];
update 表名:需要更新的表名
set:修改的列值
where :符合条件的记录才更新
1、不带条件修改数据(修改所有的行)
update 表名 set 字段名=值;
2、带条件修改数据
update 表名 set 字段名=值 where 字段名=值;
三、删除数据
语法格式:
DELETE FROM 表名 [WHERE 条件表达式]
如果没有指定 where 子句,MySQL 表中的所有记录将被删除,可以在 where 子句中指定任何条件。
1、不带条件删除数据
delete from 表名;
2、带条件删除数据
delete from 表名 where 字段名=值;
3、使用 truncate 删除表中所有记录
truncate table 表名;
4、truncate 和 delete 的区别
-
- truncate table 表名 ——推荐使用,相当于删除表的结构,再创建一张一样的表。
- delete from 表名——删除所有记录,不推荐使用,有多少记录就会执行多少次删除操作。
- truncate table 表名 ——推荐使用,相当于删除表的结构,再创建一张一样的表。