尚硅谷李玉婷老师MySQL课程--DML语言

DML(Data Manipulation Language):数据操作语言
插入:insert
修改:update
删除:delete

一、插入语句

1.方式一

语法

INSERT INTO 表名(字段名1,...) VALUES(值1,…);

特点

  1. 字段类型和值类型一致或兼容,而且一一对应
  2. 可以为空的字段,可以不用插入值,或用null填充
  3. 不可以为空的字段,必须插入值
  4. 字段的顺序可以调换
  5. 字段个数和值的个数必须一致
  6. 字段可以省略,但默认所有字段,并且顺序和表中的存储顺序一致

2.方式二

语法

INSERT INTO 表名
SET 字段1=值1,字段2=值2...

3.两种方式对比

  1. 方式一支持多行插入
  2. 方式一支持子查询,方式二不支持

二、修改语句

1.修改单表的记录

语法

UPDATE 表名
SET 列1=新值1,列2=新值2, ...
WHRE 筛选条件

2.修改多表的记录

语法

//sql92
UPDATE 表1 别名1,表2 别名2
SET 列1=值1,...
WHERE 连接条件
AND 筛选条件
//sql99
UPDATE 表1 别名1
【连接类型】 JOIN 表2 别名2
ON 连接条件
SET 列1=值1,...
WHERE 筛选条件

例1:修改张无忌女朋友的手机号为114

UPDATE beauty g
INNER JOIN boy b
ON g.boyfriend_id=b.id
SET g.phone='114'
WHERE b.name='张无忌';

例2:修改没有男朋友的女神的男朋友编号都为1号

UPDATE beauty g
INNER JOIN boy b
ON g.boyfriend_id=b.id
SET g.boyfriend_id=1
WHERE  g.boyfriend_id IS NULL;

三、删除语句

方式一 delete

1. 单表的删除

语法

DELETE FROM 表名 WHERE 筛选条件

2. 多表的删除

语法

DELETE 别名1/别名2
FROM 表1 别名1,表2 别名1
WHERE 连接条件
AND 筛选条件
//sql99
DELETE 别名1/别名2
FROM 表1 别名1
【连接类型】 JOIN 表2 别名2
ON 连接条件
WHERE 筛选条件

例:删除张无忌的女朋友的信息

DELETE g
FROM beauty g
INNER JOIN boys b
ON g.boyfriend_id=b.id
WHERE b.name='张无忌'

方式二 truncate

truncate不可加筛选,清空表
语法

TRAUNCATE TABLE 表名

两种方式对比

  1. delete可以加筛选,truncate不可以
  2. truncate没有返回值,delete有返回值为受影响行数
  3. truncate不能回滚,delete可以回滚【事务】

你可能感兴趣的:(MySQL,mysql)