我们有一个开发人员使用freetds使用pymssql连接到SQL Server。他的脚本根据MySQL数据库中的值动态生成SQL插入查询。SQL中来自pymssql回滚的事务
当您在SQL事件探查器中查看它们时,语句被正确解析并且具有正确的开始事务/提交。唯一的'用户错误消息'出现了'更改数据库上下文到...',每当您在SQL中发出USE时就会出现。批次完成后,会有一个事务日志事件“回滚”,并删除所有插入的记录。
我们不使用XACT_ABORT_OFF,因为我没有看到'更改数据库上下文'受其影响。
有没有人有任何想法或经验与此?谢谢!
编辑: 从探查器复制出来的代码在SSMS中使用相同的用户正常工作,并且没有触发器。
[第二编辑]: SQL事件探查器里面我看到下eventsubtype“回退” A“TransactionLog”条目,但是没有一个TM:回滚陈
是否检查过表中是否存在导致回滚的触发器?你是否直接从SSMS中的分析器运行查询并查看会发生什么? – HLGEM
正确的是,表格中没有触发器,当我将代码粘贴到SSMS中时,它使用相同的用户名也无妨。感谢您的输入! –