我们在服务器迁移方面有问题。我们有一个应用程序拥有如此多的事务,它可以在一个数据库服务器上正常工作。但是当将相同的数据库传输到另一台服务器时。我们面临以下错误。
Server: Msg 3998, Level 16, State 1, Line 1
Uncommittable transaction is detected at the end of the batch. The transaction is rolled back.
相同的数据库被复制到另一台具有所有数据的服务器上。如果我们将连接字符串更改为旧服务器,那么它就正常工作了。
有人能对此提出建议吗?
发布于 2009-05-05 20:40:29
您所遇到的问题是,记录在一个数据库中是可接受的,而在另一个数据库中是不可接受的。建议您查看这两个数据库结构之间的差异(是的,我知道它们应该是相同的,但显然它们不是)。怀疑您将发现排序规则差异、数据类型差异或两者之间的数据长度差异。YOu还可能有一个表,其中缺少标识定义,因此它无法插入,因为它是一个必需的字段,并且缺少该值。像SQl比较这样的工具很容易使用来发现差异。
发布于 2009-05-05 19:29:24
此消息意味着事务中的其他参与者之一投票回滚。在此之后,事务必须失败。
因此,这个信息是一个结果,而不是一个原因。您是否收到任何早期/其他错误消息?
从Management运行查询时会发生什么?
https://stackoverflow.com/questions/826420
复制相似问题