gpt4 book ai didi

python - 使用 PyMSSQL 执行引用链接服务器的存储过程时出错

转载 作者:太空宇宙 更新时间:2023-11-04 08:47:31 25 4
gpt4 key购买 nike

我正在尝试通过 pymssql 从与链接服务器通信的 python 脚本执行存储过程。 SP 在手动运行时工作,但从 python 脚本运行时出错:

(7391, 'The operation could not be performed because OLE DB 
provider"SQLNCLI11" for linked server "DBLOG" was unable to begin a
distributed transaction.DB-Lib error message 20018, severity 16:
\nGeneral SQL Server error: Check messages from the SQL Server\n')

我还没有找到任何引用此作为 pymssql 本身限制的内容。我不太确定从哪里开始。我用 pymssql 做了很多工作,从来没有遇到过任何连接问题,而且我已经验证我使用的登录名具有足够的权限(我什至尝试使用 SA)。

有什么想法吗?

谢谢!

最佳答案

我能够通过尝试在链接服务器上进行更新的 SP 重现该问题,例如,

UPDATE LINKEDSERVERNAME...TableName SET ...

虽然我的错误信息略有不同

(8501, "MSDTC on server 'PANORAMA\SQLEXPRESS' is unavailable.DB-Lib error message 20018, ...

我能够通过在 pymssql.connect 调用末尾添加一个 autocommit=True 参数来避免这个问题。

如果出于某种原因使用 autocommit=True 对您没有好处,那么看看

MSDTC on server 'server is unavailable

有关配置 MSDTC 的信息。

关于python - 使用 PyMSSQL 执行引用链接服务器的存储过程时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38837327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com