我正在运行一些查询,从其执行中打印运行时统计信息。
这是通过完成的print('message')
在sql脚本中使用。
我希望在通过 pymssql 调用过程/脚本时看到这些消息。
conn = pymssql.connect(server, user, password, "tempdb")
cursor = conn.cursor()
cursor.execute("print('message')")
conn.commit()
上面的脚本不返回任何内容,并且我找不到任何有关如何使该打印显示在控制台输出中的提示。
找到了一个解决方案,让我仍然使用 pymssql 并获取打印消息。pymssql.Connection
实际上使用_mssql.MSSQLConnection
内部。
这意味着您可以使用this http://pymssql.org/en/stable/_mssql_examples.html#custom-message-handlers例如通过访问该内部对象。
connection = pymssql.connect(server='server_address', database='db_name')
connection._conn.set_msghandler(my_msg_handler) # Install our custom handler
其中 my_msg_handler 与中的对象类型相同pmssql 维基 http://pymssql.org/en/stable/_mssql_examples.html#custom-message-handlers。
访问内部对象并不理想,但如果您不想使用不同的库并且需要获取 SQL 打印,这是我发现的唯一方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)