5
A
回答
7
有問題的COMMIT實際上並不是您認爲的COMMIT。見COMMIT WORK
COMMIT [WORK] [; ]
備註
該語句的功能與COMMIT TRANSACTION,除了COMMIT TRANSACTION接受用戶定義的事務的名稱。此COMMIT語法(帶或不帶可選關鍵字WORK)與SQL-92兼容。
所以COMMIT
通過本身是COMMIT WORK
其等同於COMMIT TRANSACTION
。
同上,用於ROLLBACK [ WORK ]
註釋之後,
BEGIN TRANSACTION gbn
SELECT 1
COMMIT gbn -- fail
GO
BEGIN TRANSACTION gbn
SELECT 2
COMMIT TRAN gbn -- works
GO
0
IF @@TRANCOUNT > 0
目標檢查有(至少)一個未決事務 - 如果必須同時ROLLBACK
和COMMIT
作爲執行這些指令,而無需任何事務打開使用會產生一個錯誤
相關問題
- 1. 處理Uncommitable交易SQL SERVER
- 2. 的SQL Server ODBC + QT +:交易
- 3. 麻煩與「IF @@ TRANCOUNT> 0 COMMIT TRAN」
- 4. 的SQL Server 2014和交易
- 5. BEGIN TRAN和存儲過程中的COMMIT TRAN
- 6. 交易鎖定SQL Server 2005
- 7. 需要對交易SQL SERVER
- 8. 我認爲BEGIN/COMMIT TRAN之間的所有內容都被認爲是成功或失敗的一項交易?
- 9. 沒有交易
- 10. xcode git commit沒有提交
- 11. Sql Server總結多個交易完成的單個交易ID
- 12. SQL Server的功能和交易
- 13. 沒有交易的python-mysqldb
- 14. 開始交易...提交交易問題
- 15. SQL Server 2005中tran和transaction之間有什麼區別
- 16. 交易沒有回滾
- 17. 觸發沒有交易?
- 18. Yii交易沒有回滾
- 19. 交易沒有結果
- 20. SQL Server 2008 R2的交易是@@ ERROR必要的,是ROLLBACK TRANS必要
- 21. Sql Start交易
- 22. SQL選擇重複發生的交易在SQL Server數據庫
- 23. 在單個INSERT/SET上執行BEGIN/COMMIT TRAN是不錯的編碼練習? (SQL Server 2008)
- 24. Wildfly - deltaspike - 交易沒有提交?
- 25. 片段交易沒有提交
- 26. 春季交易沒有提交
- 27. ADO.Net的交易連接到SQL Server 2000和SQL Server 2008的差異
- 28. SQL Server 2014 - 關鍵字'tran'附近的語法不正確
- 29. PHP PDO - 沒有活動交易
- 30. 沒有交易正在進行中JTA交易
'除了COMMIT TRANSACTION接受用戶定義的交易名稱....但我沒有給他交易的名字......多數民衆贊成的問題。 +我不是在談論'WORK'關鍵字。即時通訊談論提交與提交trans。 – 2012-02-13 13:41:34
@羅伊納米爾:不,承諾本身意味着提交工作。與指定交易無關:如果您確實命名了它,則在您的問題中沒有提及。和一個名字,你必須顯式使用'COMMIT TRANSACTION SomeName'或'COMMIT TRAN SomeName'。 *不*自行落實 – gbn 2012-02-13 13:44:11
所以如果我不使用任何命名事務,我總是可以單獨使用提交。對 ? – 2012-02-13 13:47:42