1. 使用 delete 语句删除表中的数据:
语法:
delete from <表名> [where < 删除条件 >]
delete 是删除的意思
where 是选填内容可以不加, 但是不加条件的话是删除整个表
例子:
delete from 成绩表 where 姓名 ='张三'
含义:
删除成绩表中张三的信息, 如果不加 where 就是删除整个成绩表
注意:
delete 用于删除整条记录, 不会删除单个字段, 也就是不会删除表格的一空, 所以 delete 后面不会出现列名.
~~ delete < 列名 > from < 表名 > ~~
2. 使用 truncate table 语句删除表中的数据
语法:
truncate table < 表名 >
truncate table 是删除表的意思
例子:
truncate table 成绩表
含义: 删除成绩表中的所有数据 (记录行)
注: truncate table 功能上类似没有 where 字句的 delete 语句.
两者的区别:
1.truncate 语句不带 where 字句, 只能删除整个表的数据. 而 delete 可以带 where, 允许按条件删除某些数据.
2.truncate 语句不记录事务日志, 所以删除的数据 * 不能通过事务日志恢复 *. 而 delete 会记录, 能恢复.
3.truncate 语句删除表中所有行, 标识符列会重置为 0. 而 delete 不会重置标识符列.
4.truncate 语句不能用于外键约束引用的表.
来源: http://www.bubuko.com/infodetail-2479473.html