SQL语句-DML(数据操作语言)对表记录的插入、更改、删除命令
2023-12-06 15:47:03DML是指对数据库中表记录的操作,主要包含表记录的插入(INSERT)、更改(UPDATE)、删除(DELETE)、查询(SELECT)。
一. 插入记录
1. 语法
INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (value1, value2, ...);
2. 示例
例如,向student表中插入一条学生信息记录:
INSERT INTO student (name, age) VALUES ("李红", 20);

也可以不指定字段名称,但是values后面的顺序要和表中的字段顺序一致。
含有可空字段、非可空字段但是有默认值、自增字段,可以不用写在 表名(field1, field2, ...) 中。
自增字段: 比如在上面我们创建表时定义的字段id(id PRIMARY KEY AUTO_INCREMENT)
INSERT INTO 命令可以一次性插入多条记录,语法如下:
INSERT INTO 表名 (field1, field2, ...字段名n) VALUES (value1, value2, ...), ... (value1, value2, ...);
例如,向student表中插入两条学生信息记录:
INSERT INTO student (name, age)
VALUES
("刘涛", 10),
("王五", 15);

二. 更新记录
1. 语法
UPDATE 表名 SET 字段名1 = value1, 字段名2 = value2, ..., 字段名n = value [WHERE 条件];
2. 示例
例如,将王五学生的年龄从15改为19岁,并将名字改为王武:
UPDATE student SET name = "王武", age = 19 WHERE id = 4;

三. 删除记录
1. 语法
DELETE FROM 表名 [WHERE 条件];
注意:对于单表或者多表,如果delete命令中不带where条件,会将表中的所有数据删除,使用时需要注意。
2. 示例
例如,删除student表中名叫"李明"学生记录信息:
DELETE FROM student WHERE name = "李明";

在MySQL中,delete命令可以同时删除多个表中数据,语法如下:
DELETE FROM 表名1, ..., 表名n [WHERE 条件];
当然你可以给表名起一个别名,那么delete命令应该是:
DELETE FORM 表名1 [as] 别名1, ..., 表名n [as] 别名n [WHERE 条件];