在 MySQL 通过 DELETE 语句删除数据表中的数据。在此,咱们先筹备一张数据表,代码如下:
– 创立学生表
create table student(
id int,
name varchar(30),
age int,
gender varchar(30)
);
MySQL 装置请参考:http://anzhuang.cuohei.com/
– 插入数据
insert into student (id,name,age,gender) values (2,’lucy’,17,’female’),(3,’jack’,19,’male’),(4,’tom’,18,’male’),(5,’sal’,19,’female’),(6,’sun’,20,’male’)
,(7,’sad’,13,’female’),(8,’sam’,14,’male’);
1. DELETE 根本语法
在该语法中:表名用于指定要执行删除操作的表;[WHERE 条件表达式] 为可选参数用于指定删除的条件。
DELETE FROM 表名 [WHERE 条件表达式];
2. DELETE 删除局部数据
示例:删除 age 等于 14 的所有记录 MySQL 命令:
delete from student where age=14;
3. DELETE 删除全副数据
示例:删除 student 表中的所有记录 MySQL 命令:
delete from student;
4. TRUNCATE 和 DETELE 的区别
TRUNCATE 和 DETELE 都能实现删除表中的所有数据的性能,但两者也是有区别的:
1、DELETE 语句后可跟 WHERE 子句,可通过指定 WHERE 子句中的条件表达式只删除满足条件的局部记录;然而,TRUNCATE 语句只能用于删除表中的所有记录。
2、应用 TRUNCATE 语句删除表中的数据后,再次向表中增加记录时主动减少字段的默认初始值从新由 1 开始;应用 DELETE 语句删除表中所有记录后,再次向表中增加记录时主动减少字段的值为删除时该字段的最大值加 1
3、DELETE 语句是 DML 语句,TRUNCATE 语句通常被认为是 DDL 语句