数码资讯
SQLServer中截断事务回滚操作的方法
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
我们一般认为截断是一个非回滚操作,它删除表中的所有数据并重置标识列。
如果在事务中进行截断操作,则可以回滚。另一方面,它不从日志文件文件中恢复数据。它不记录日志文件中已删除的数据,并且只记录日志中数据页的单元分配。
下面的例子可以解释上面所说的。
复制代码代码如下:使用temp_test_database
-创建临时表
创建表truncatetabel(ID int)
插入truncatetabel(ID)
选择1
联盟的所有
选择2
联盟的所有
选择3
复制代码代码如下:-检查插入的数据
SELECT * FROM truncatetabel
图:
启动事务的执行
复制代码代码如下所示:
启动业务
事务的开始
TRUNCATETABLE truncatetabel
前滚回来检查truncatetable
SELECT * FROM truncatetabel
F5执行,如图中所示:
执行回滚事务
复制代码代码如下:-回滚事务
回滚事务
再次检查表truncatetable
复制代码如下:-回滚后再次检查truncatetable
SELECT * FROM truncatetabel
F5执行,如图中所示:
总之,事务可以回滚到截断操作。
如果在事务中进行截断操作,则可以回滚。另一方面,它不从日志文件文件中恢复数据。它不记录日志文件中已删除的数据,并且只记录日志中数据页的单元分配。
下面的例子可以解释上面所说的。
复制代码代码如下:使用temp_test_database
-创建临时表
创建表truncatetabel(ID int)
插入truncatetabel(ID)
选择1
联盟的所有
选择2
联盟的所有
选择3
复制代码代码如下:-检查插入的数据
SELECT * FROM truncatetabel
图:
启动事务的执行
复制代码代码如下所示:
启动业务
事务的开始
TRUNCATETABLE truncatetabel
前滚回来检查truncatetable
SELECT * FROM truncatetabel
F5执行,如图中所示:
执行回滚事务
复制代码代码如下:-回滚事务
回滚事务
再次检查表truncatetable
复制代码如下:-回滚后再次检查truncatetable
SELECT * FROM truncatetabel
F5执行,如图中所示:
总之,事务可以回滚到截断操作。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。