簡體   English   中英

無法使SQL Server 2012事務回滾

[英]Cannot get SQL Server 2012 Transaction to rollback

SELECT *
FROM [Production].[Product]

BEGIN TRY
    BEGIN TRAN;
        UPDATE [Production].[Product]
        SET Color = 'Off White'

        SELECT *
        FROM [Production].[Product]

        SELECT @@TRANCOUNT AS 'Transaction Count'

    COMMIT TRAN;
END TRY
BEGIN CATCH
    ROLLBACK TRAN;
END CATCH;

SELECT *, @@TRANCOUNT AS 'Transaction Count'
FROM [Production].[Product]

我沒有收到任何錯誤,但是更改並未像應該的那樣回滾...有什么想法嗎?

SELECT *
FROM [Production].[Product]

BEGIN TRAN;
SAVE TRAN Product1;
    UPDATE [Production].[Product]
    SET Color = 'Off White'
    SELECT *
    FROM [Production].[Product]
    SELECT @@TRANCOUNT AS 'Transaction Count'
    ROLLBACK TRAN Product1;
COMMIT TRAN;




SELECT * 
FROM [Production].[Product]
SELECT @@TRANCOUNT AS 'Transaction Count'

這可以按我需要的方式工作,以為我會分享財富!〜

編輯1:忘記包含對代碼的關鍵更改,我只是人類!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM