【Oracle】truncate和delete区别

2020-12-07 10:01:06 浏览数 (2)

truncate table 和delete * from的区bai别为:释放数据不同、清空标识不du同、触发器不同。zhi

一、释放数据不同 1、truncate table:truncate table 直接释放数据页,dao并且在事务日志中也只记录数据页的释放。 2、delete * from:delete * from 是一行一行地释放数据,在事务日志中要记录每一条记录的删除。 二、清空标识不同 1、truncate table:truncate table不仅是删除表里面的数据,而且还会清空表里面主键的标识。 2、delete * from:delete * from仅仅能删除数据,不能清空标识。

三、触发器不同

1、truncate table:truncate table不会激发触发器。 2、delete * from:delete * from会激发触发器。

0 人点赞