租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

oracle中truncate和delete有什么不同,oracle truncate drop storage

发布时间:2024-02-28 16:57:20

oracle中truncate和delete有甚么不同

在Oracle数据库中,truncate和delete都用于删除表中的数据,但是它们之间有一些重要的不同。

  1. truncate是DDL语句,而delete是DML语句。truncate语句会立即释放表空间,而delete语句不会。这就意味着使用truncate删除表中的数据会更快,但是没法回滚。

  2. truncate语句删除全部表中的数据,而delete语句可以根据条件删除部份数据。

  3. truncate语句不会触发表的触发器,而delete语句会触发。

  4. truncate语句不会激活表的ON DELETE触发器,而delete语句会。

综上所述,如果要删除表中的所有数据并且不需要回滚,则可使用truncate语句。如果需要根据条件删除部份数据,还是需要触发触发器,则应当使用delete语句。