删除 DELETE 和 TRUNCATE
DELETE 和 TRUNCATE
本部分为 DELETE 和 TRUNCATE 详解
-
DELETE
-
语法:
delete from 表名 [where 条件]
-- 删除数据表 DELETE(尽量不要这么删除) DELETE FROM `student`; -- 删除指定数据 DELETE FROM `student` WHERE id=1;
-
-
TRUNCATE:完全清空一个数据库表,表结构和索引约束不会变
-
语法:
TRUNCATE 表名
-- 完全清空数据库表 TRUNCATE `student`;
-
-
DELETE 和 TRUNCATE 的区别
- 相同点:都能删除数据且都不会删除表结构
- 不同点:
- TRUNCATE 会重新设置列的自增,自增计数会归零
- TRUNCATE 不会影响事物
- 所以用 TRUNCATE 是最好的
- 另外, delete 存在以下问题(了解即可)
- innodb 引擎数据库重启后自增列会从1重新开始(存在内存当中,断电即失)
- myisam 引擎数据库重启后自增列继续从上一个自增量开始(存在文件当中,断电不会丢失)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律