DELETE 命令
语法:delete from 表名 [where 条件]
-- 删除数据(避免这样写,会全部删除)
DELETE FROM `student`
-- 删除指定数据
DELETE FROM `student` WHERE id = 1
TRUNCATE 命令
作用:完全清空一个数据表,表的结构和索引约束不会变
-- 清空student表
TRUNCATE TABLE `student`
区别
- 相同点:都能删除数据,都不会删除表结构
- 不同点:
- TRUNCATE 重新设置自增列,计数器归零
- TRUNCATE 不会影响事务
DELETE 删除问题,重启数据库现象
- InnoDB 自增列会从1开始(存在内存当中的,断电即失)
- MyISAM 继续从上一个自增量开始(存在文件中的,不会丢失)