MySQL:数据操作语言(DML)
accttodo 12/31/2023 后端数据库MySQL
目录
参考:
# MySQL:数据操作语言(DML)
用于添加、删除、修改数据库记录,并检查数据库完整性;关键字:insert、DELETE、update等。
# 一、插入语句
方式一
语法:
INSERT INTO 表名 ( 字段名1, 字段名2... )
VALUES
( 值1, 值2... );
1
2
3
2
3
插入的值的类型与相应字段的类型一致或兼容;
可以为NULL的列如何插入值:
在对应的字段名位置写入null;
字段名和值都不写;
字段的顺序可以改变;
字段和值的个数必须一致;
可以省略字段名,这样默认添加所有的字段;
方式二
语法:
INSERT INTO 表名
SET 字段名=值, ...;
1
2
2
# 二、修改语句
# 修改单表记录
语法:
UPDATE 表名
SET 列1=新值, 列2=新值, ....
WHERE 筛选条件;
1
2
3
2
3
# 修改多表记录
方式一
语法:
UPDATE 表1 别名, 表2 别名
SET 列1=新值, 列2=新值, ...
WHERE 连接条件 AND 筛选条件;
1
2
3
2
3
方式二
语法:
UPDATE 表1 别名【inner || left || right】 JOIN 表2 别名 ON 连接条件
SET 列1=新值, 列2=新值, ...
WHERE 筛选条件;
1
2
3
2
3
# 三、删除语句
# 单表删除
语法:
DELETE
FROM 表名
WHERE 筛选条件
1
2
3
2
3
# 多表的删除
方式一
语法:
DELETE 表1别名, 表2别名(需要删除谁的就加上谁的别名)
FROM 表1 别名, 表2 别名
WHERE 连接条件 AND 筛选条件;
1
2
3
2
3
方式二
语法:
DELETE 表1别名, 表2别名
FROM 表1 别名 【inner || left || right】 JOIN 表2 别名 ON 连接条件
WHERE 筛选条件;
1
2
3
2
3
# 删除整张表
语法:
TRUNCATE TABLE 表名;(不加 WHERE 条件)
1
DELETE 与 TRUNCATE 区别:
- TRUNCATE 不能加 WHERE 条件,而 DELETE 可以加 WHERE 条件。
- TRUNCATE 的效率高。
- TRUNCATE 删除带自增长的列的表后,如果再插入数据,数据从1开始。
- DELETE 删除带自增长列的表后,如果再插入数据,数据从上一次的断点处开始。
- TRUNCATE 删除不能回滚,DELETE 删除可以回滚。