Loading

DML

六、DML

DML:数据的插入和删除、修改。

1 插入

语法:

INSERT INTO 表名(列名1,列名2,……,列名n) values(值1,值2,……,值n),(值1,值2,……,值n),……;

特点:

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

示例:

# 新增雇员信息
INSERT INTO employees ( first_name, last_name, email, phone_number, job_id, salary, commission_pct, manager_id, department_id, hiredate )
VALUES
	(
		'xx',
		'xxx',
		'xxx@qq.com',
		'18888888',
		NULL,
		3000,
		NULL,
		NULL,
		NULL,
	'2019-11-11')

2 修改

语法:

UPDATE 表名
SET 列1=值1,列2=值2,……,列n=值n
[WHERE 条件];

示例:

# 修改表中姓名为 K_ing 的手机号码为 12345678901
UPDATE employees 
SET phone_number = '12345678901' 
WHERE
  last_name = 'K_ing';

3 删除

语法:

# 方式1:delete语句 
DELETE FROM 表名
[WHERE 筛选条件];

# 方式2:truncate语句,删除现有数据表中的所有数据。
truncate table 表名

示例:

# 删除 last_name 为 xxx 的员工
DELETE 
FROM
	employees 
WHERE
	last_name = 'xxx';
DELETE 
FROM
  employees 
WHERE
  last_name = 'xxx';

两种删除方式的区别:

  • truncate不能加where条件,而delete可以加where条件

  • truncate的效率高一丢丢

  • truncate 删除带自增长的列的表后,如果再插入数据,数据从1开始

  • delete 删除带自增长列的表后,如果再插入数据,数据从上一次的断点处开始

  • truncate删除不能回滚,delete删除可以回滚

posted @ 2022-01-27 06:32  yyyz  阅读(36)  评论(0编辑  收藏  举报