请说明 DELETE 和 TRUNCATE 这两个数据库操作各自的特点、区别,以及它们执行后数据是否会被直接清出磁盘。
考察说明
考察对数据库删除操作语义、事务性及底层存储影响的理解
回答思路
- 准确说出 DELETE 与 TRUNCATE 的核心语义差异
- 理解 DELETE 逐行删除且可加 WHERE、可回滚、触发触发器
- 理解 TRUNCATE 一次性释放整个表的数据页、不可按行过滤、通常不可回滚
- 说明 DELETE 删除后空间不一定立即释放、表可能留高水位
- 说明 TRUNCATE 直接从磁盘释放数据页,但不涉及物理抹除,只是标记可复用
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。