12.8.5 删除记录
最后更新于:2022-04-02 00:16:42
## 使用 delete 删除记录
| 类别 | 详细解示 |
| -- | -- |
| 基本语法 | delete from 表 [where 条件]; |
| 示例 | delete from user where id > 10; |
| 示例说明 | 删除掉用户表中id大于10的所有用户 |
user表,表结构如下:
| id | username | balance |
| -- | -- | -- |
| 1 | 李文凯 | 50000.00 |
| 2 | 黄晓明 | 150000000.00 |
| 15 | 马云 | 15000.00 |
| 16 | 陈赫 | 1234131.00|
> mysql> delete from user where id = 1;
Query OK, 1 row affected (0.08 sec)
删除掉了id为1的,李文凯这一行的记录。
##清空表记录
delete和truncate是一样的,但它们有一点不同,那就是DELETE可以返回被删除的记录数,而TRUNCATE TABLE返回的是0。
如果一个表中有自增字段,使用truncate table 这个自增字段将起始值恢复成1.
| 类别 | 说明|
| -- | -- |
| 基本语法 | TRUNCATE TABLE 表名; |
|示例 | TRUNCATE TABLE user; |
|示例说明 | 清空表的数据,并且让自增的id从1开始自增 |
***
【切记】
1. 删除时一定要记住加上where条件,不然会清空掉整个表的记录。
2. 删除重要数据前一定要备份、备份、备份。
';