sql-server – COMMIT TRANSACTION请求没有相应的BEGIN TRANSACTION
|
这是一个奇怪的问题,我正在一个生产服务器上运行.现在在过去两周里发生了两次,这是一个获得大量流量的服务器. 我们在Web服务中有一些执行BEGIN TRAN的代码,然后运行几个SQL查询(两个插入后跟更新).然后在最后执行一个COMMIT.现在两次我们已经在日志中收到了消息:
在前两个插入和更新之间,我们调用另一个Web服务,因此在调用COMMIT之前,前两个插入之间可能会有一点延迟,最后一次更新.这可能会导致我们的问题吗?我们在IIS 7和Server 2008 R2上运行(所有更新的应用程序). 最初我们虽然可以将应用程序池重新使用,但是在半夜后将其改为回收.现在我不知道会导致SQL Server忘记对BEGIN TRAN的调用. 这个Web服务确实被调用了很多.有没有人看到过这样的东西?我现在完全失去了… 任何帮助或建议非常感谢! 解决方法看起来你的事务失败了,回滚了,没有任何提交这样的事情的例子 CREATE TABLE BlaTest(id INT PRIMARY KEY NOT NULL) GO 现在运行这个 BEGIN TRAN
INSERT BlaTest VALUES('a')
GO
COMMIT TRAN
这是错误 Msg 245,Level 16,State 1,Line 3 Conversion failed when converting the varchar value 'a' to data type int. Msg 3902,Line 2 The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION. 这将运行没有问题 BEGIN TRAN INSERT BlaTest VALUES(5) GO COMMIT TRAN 关于交易的一篇很好的文章是Erland Sommarskog的Error Handling in SQL 2005 and Later (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 我可以在Mono上使用SQL Server Compact Edition CE吗?
- SQL语句计算两个日期之间有多少个工作日的方法
- sql-server – 标量函数fn_cdc_get_min_lsn()不断返回’0x0
- 揭秘SQL Server 2014有哪些新特性(1)-内存数据库
- SQL Server AspNetPager分页控件 存储过程
- sql-server – Sql server DELETE和WITH子句
- .net – 寻找对象数据库
- SQL Server 通过位运算功能巧妙解决多选查询方法
- sql-server – 在不同的服务器上使用SSIS环境变量
- sql-server-2005 – 从SQL Server 2008降级到2005
