概述
数据操纵语言全程是Data Manipulation Language,主要是进行插入元组、删除元组、修改元组的操作。
主要掌握:
-
insert 添加数据
-
update 修改数据
-
delete 删除数据
2.2.1 DML-添加数据
1、给指定字段添加数据
INSERT INTO 表名 (字段1, 字段2, ......) VALUES (值1, 值2, ......);
2、给全部字段添加数据
INSERT INTO 表名 VALUES (值1, 值2, ......);
3、批量添加数据
INSERT INTO 表名 (字段1,字段2, ......) VAUES (值1, 值2, ......), (值1, 值2, .....);
INSERT INTO 表名 VALUES (值1, 值2, ...) (值1, 值2, ...);
* 注意:
-
插入数据时,指定的字段顺序要与值的顺序一一对应。
-
字符串和日期数据应包含在引号中。
-
插入数据的大小,应该在字段指定的范围内。
2.2.2 DML-修改和删除数据
1、DML-修改数据
UPDATE 表名 SET 字段名1=值1, 字段名2=值2, ... [WHERE 条件];
* 注意:
-
修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据.
2、DML-删除数据
DELETE FROM 表名 [WHERE 条件];
* 注意:
-
DELETE语句的条件可以有,也可以没有,如果没有条件,则会删除整张表的所有数据。
-
DELETE语句不能删除某一个字段的值,如果想删除某一字段,可以使用UPDATE置为NULL。
删除和修改数据都有一个可选条件WHERE,如果没有WHERE条件,都将对表中的所有数据进行操作,这是一个危险操作,需要谨慎!
练习:
-- ---------- DML 添加数据 ----------
USE my_database;
-- 1.给employee表中插入一条员工数据
INSERT INTO employee (no, work_id, name, gender, age, id, entry_date)
VALUES (1, 000001, '张无忌', '男', 29, '110110100010001000', '2020-01-01');
# 查询表中所有数据
SELECT * FROM employee;
-- 2.给employee表中插入多条数据,插入全部字段(不指定字段名称)
INSERT INTO employee
VALUES (2, 000002, '杨逍', '男', 30, '100200100010001000', '2019-01-01'),
(3, 000003, '韦一笑', '男', 30, '100200100010001000', '2019-01-01'),
(4, 000004, '殷天正', '男', 30, '100200100010001000', '2019-01-01');
SELECT * FROM employee;
-- ---------- DML 修改数据 ---------
-- 1.修改no为1的数据,name修改为'小昭',gender修改为'女'
UPDATE employee SET name = '小昭', gender = '女' WHERE no = 1;
SELECT * FROM employee;
-- 2.将所有员工的入职日期修改为 2008-08-08
UPDATE employee SET entry_date = '2008-08-08';
SELECT * FROM employee;
-- ------- DML 删除数据 ----------
-- 1.删除女性员工
DELETE FROM employee WHERE gender = '女';
SELECT * FROM employee;
-- 2.删除所有员工
DELETE FROM employee;
SELECT * FROM employee;
2.2.3 DML-小结
DML语句是数据操作语言,主要控制的是数据库表中数据的增、删、改操作。
1、添加数据
INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...)[, (值1, 值2,...)];
2、修改数据
UPDATE 表名 SET 字段1 = 值1, 字段2 = 值2 [WHERE 条件];
3、删除数据
DELETE FROM 表名 [WHERE 条件];