sqlserver事务返回超时,实际成功

Posted shawnc24

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver事务返回超时,实际成功相关的知识,希望对你有一定的参考价值。

这两天出现一个问题。

在客户现场,调用一个事务,用于insert。

为什么要用事务去insert,是因为插入数据后,要返回主键id,通过事务可以output insert.id。

最近数据库不稳定,调用这个事务,是通过query,代码返回错误,查询超时已过期,而实际上,数据库已经插入了这条数据,悲剧!

 

具体原因未找到,但分析是以下的原因:

事务执行分为以下步骤:

1.insert 

2.事务结束

3.返回insert.id

4.代码接口返回

前面两步ok,第3步error timeout,导致代码接口失败,实际上insert是成功了。

 

网上没找到相关资料。后续有时间再看看吧

以上是关于sqlserver事务返回超时,实际成功的主要内容,如果未能解决你的问题,请参考以下文章

SqlServer2008R2中的NOLOCKHOLDLOCKUPDLOCKTABLOCKTABLOCKX区别

sql事务的使用及其技巧整理

什么是sqlserver中的事务

.NET连接SQLServer返回数据时提示“超时时间已到。在操作完成之前超时时间已过或服务器未响应。” 附代码

com.microsoft.sqlserver.jdbc.SQLServerException:连接超时(读取失败)

sqlserver 事务