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