发布
社区首页 >问答首页 >在批处理结束时检测到未提交的事务。事务被回滚。

在批处理结束时检测到未提交的事务。事务被回滚。
EN

Stack Overflow用户
提问于 2009-05-05 19:00:51
回答 2查看 16.5K关注 0票数 4

我们在服务器迁移方面有问题。我们有一个应用程序拥有如此多的事务,它可以在一个数据库服务器上正常工作。但是当将相同的数据库传输到另一台服务器时。我们面临以下错误。

Server: Msg 3998, Level 16, State 1, Line 1

Uncommittable transaction is detected at the end of the batch. The transaction is rolled back.

相同的数据库被复制到另一台具有所有数据的服务器上。如果我们将连接字符串更改为旧服务器,那么它就正常工作了。

有人能对此提出建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-05-05 20:40:29

您所遇到的问题是,记录在一个数据库中是可接受的,而在另一个数据库中是不可接受的。建议您查看这两个数据库结构之间的差异(是的,我知道它们应该是相同的,但显然它们不是)。怀疑您将发现排序规则差异、数据类型差异或两者之间的数据长度差异。YOu还可能有一个表,其中缺少标识定义,因此它无法插入,因为它是一个必需的字段,并且缺少该值。像SQl比较这样的工具很容易使用来发现差异。

票数 0
EN

Stack Overflow用户

发布于 2009-05-05 19:29:24

此消息意味着事务中的其他参与者之一投票回滚。在此之后,事务必须失败。

因此,这个信息是一个结果,而不是一个原因。您是否收到任何早期/其他错误消息?

从Management运行查询时会发生什么?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/826420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档