SQL Server中TRUNCATE事務(wù)回滾操作方法
我們一般都認(rèn)為T(mén)RUNCATE是一種不可回滾的操作,它會(huì)刪除表中的所有數(shù)據(jù)以及重置Identity列。
如果你在事務(wù)中進(jìn)行TRUNCATE操作,就能回滾。反之,它就不會(huì)從日志文件文件恢復(fù)數(shù)據(jù)。它不會(huì)在日志文件中記錄刪除的那些數(shù)據(jù),它只在日志中記錄數(shù)據(jù)頁(yè)的單元分配。
下面的例子就能解釋上面的所說(shuō)的.
GO
--創(chuàng)建一個(gè)臨時(shí)表
CREATE TABLE TruncateTabel(ID INT)
INSERT INTO TruncateTabel(ID)
SELECT 1
UNION ALL
SELECT 2
UNION ALL
SELECT 3
GO
SELECT * FROM TruncateTabel
如圖:

開(kāi)始執(zhí)行事務(wù)
--開(kāi)始事務(wù)
BEGIN TRAN
TRUNCATE TABLE TruncateTabel
GO
--回滾之前檢查T(mén)runcateTable
SELECT * FROM TruncateTabel
GO
F5執(zhí)行,如圖:

執(zhí)行回滾事務(wù)
ROLLBACK TRAN
GO
再次檢查表TruncateTable
SELECT * FROM TruncateTabel
GO
F5執(zhí)行,如圖:

總結(jié)一下,事務(wù)是可以對(duì)TRUNCATE操作進(jìn)行回滾的。
- Oracle給用戶(hù)授權(quán)truncatetable的實(shí)現(xiàn)方案
- delete from 表名與truncate table 表名區(qū)別
- SQL中Truncate的用法
- golang實(shí)戰(zhàn)之truncate日志文件詳解
- tf.truncated_normal與tf.random_normal的詳細(xì)用法
- smarty中改進(jìn)truncate使其支持中文的方法
- 實(shí)例理解SQL中truncate和delete的區(qū)別
- 詳解SQL中drop、delete和truncate的異同
- Mysql開(kāi)啟慢SQL并分析原因
- Truncate Table的用法講解
相關(guān)文章
sql里將重復(fù)行數(shù)據(jù)合并為一行數(shù)據(jù)使用逗號(hào)進(jìn)行分隔
sql里將重復(fù)行數(shù)據(jù)合并為一行,將多行fieldname字段的內(nèi)容串聯(lián)起來(lái),用逗號(hào)分隔,接下來(lái)為大家介紹下詳細(xì)的實(shí)現(xiàn)sql語(yǔ)句,希望對(duì)你有所幫助2013-04-04
SQL Server 2005刪除日志文件的幾種方法小結(jié)
SQL Server數(shù)據(jù)庫(kù)都有l(wèi)og文件,log文件記錄用戶(hù)對(duì)數(shù)據(jù)庫(kù)修改的操作。可以通過(guò)直接刪除log文件和清空日志在清除數(shù)據(jù)庫(kù)日志2013-07-07
sql2008 附加數(shù)據(jù)庫(kù)時(shí)出現(xiàn)錯(cuò)誤5123提示的解決方法
今天重裝了一下家里電腦的數(shù)據(jù)庫(kù),在附加己有數(shù)據(jù)庫(kù)時(shí),出現(xiàn)5123錯(cuò)誤2011-11-11
無(wú)法在com+ 目錄中安裝和配置程序集 錯(cuò)誤:-2146233087的解決方法[已測(cè)]
最近從腳本之家下載sql2005的部分朋友反應(yīng)無(wú)法安裝sql2005,今天在安裝SQL Server2005時(shí)碰到了這個(gè)錯(cuò)誤,到網(wǎng)上搜了一下,找到了解決辦法,特記在這里,以備以后需要。2012-10-10
利用SQL SERVER 2005數(shù)據(jù)庫(kù)鏡像實(shí)現(xiàn)可用性分析
SQL SERVER2005中首次提出了數(shù)據(jù)庫(kù)鏡像概念,基于軟件的高可用性解決方案 那是完全基于軟件的高可用性解決方案。不需要增加硬件成本,也就是低硬件成本快速的故障轉(zhuǎn)移恢復(fù)2014-08-08
SqlServer 2005/2008數(shù)據(jù)庫(kù)被標(biāo)記為“可疑”的解決辦法
當(dāng)數(shù)據(jù)庫(kù)發(fā)生這種操作故障時(shí),可以按如下操作步驟可解決此方法,打開(kāi)數(shù)據(jù)庫(kù)里的Sql 查詢(xún)編輯器窗口,運(yùn)行以下的命令。2010-05-05
SQL2005 provider: 命名管道提供程序 error: 40 無(wú)法打開(kāi)到 SQL Server 的連接
這篇文章主要介紹了SQL2005 provider: 命名管道提供程序 error: 40 無(wú)法打開(kāi)到 SQL Server 的連接,需要的朋友可以參考下2015-01-01

