了解SQL中截断和删除的区别的一个例子
本文介绍了SQL中截断和删除的区别,并用一个简单的例子来帮助您了解细节如下-创建表的表
如果object_id('table1,U)是无效的
表表1
创建表的表
(id不是null),
副长石int不为空)
-插入测试数据
插入表
值(1101)、(2102)、(3103)、(4104)
-创建表的表
如果object_id('table2,U)是无效的
表表
创建表的表
(
副长石int不为空)
-插入测试数据
插入表的值(101)、(102)、(103)、(104)
SELECT * FROM表
SELECT * FROM表
创建在table1表的触发器,并删除相应的表计表时,表中的数据被删除
创建触发器tg_table1在表1
后删除
作为
开始
删除从表内对TA TA TA加入删除重= tb.foid结核病。
结束
-测试删除操作
从表1 id是1删除
-在表表的重= 101的数据也被删除触发器是当成功
SELECT * FROM表
SELECT * FROM表
-测试截断删除操作
TRUNCATE TABLE表
---表数据不删除
SELECT * FROM表
SELECT * FROM表
——检查截断和删除的日志记录。
检查点
SELECT * FROM fn_dblog(null,null)
从表中删除
在重= 102
SELECT * FROM fn_dblog(null,null)
在第四线,一个lop_delete_rows,lcx_heap删除操作日志记录
截断日志记录
检查点
SELECT * FROM fn_dblog(null,null)
TRUNCATE TABLE表
SELECT * FROM fn_dblog(null,null)
截断操作不记录删除日志操作
主要原因是因为截断操作没有激活触发器,因为截断操作没有记录每个日志删除操作,所以如果需要删除一个数据表时,需要考虑是否应该删除日志操作,而不按个人习惯操作。
这是本文的全部内容,希望能帮助您区分SQL中的截断和删除使用。