SQL服务器中Delete和Truncate的区别是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (26)

在最近的一次面试中,我被问到两者之间的区别。我回答说我只知道这些。

然后面试官问Truncate是否可以回滚?我回答不。

面试官说,它可以回滚,并要求我详细了解Delete和Truncate,并在以后检查。

提问于
用户回答回答于

TRUNCATE:删除内容、释放空间但不删除定义。 DELETE:删除内容不删除定义,不释放空间。

用户回答回答于

TRUNCATE操作将释放属于该表的所有页。这些释放将被记录,并可以回滚。DELETE将将所有行标记为已删除,并记录每一行。

扫码关注云+社区