如何从sql_query获取输出?
import pyodbc sql_query = "print 'Hello World'" conn = pyodbc.connect("DRIVER={sql Server}; SERVER=myserver; DATABASE=mydatabase; UID=myusername; PWD=mypassword") cur = conn.cursor() cur.execute(sql_query) cur.commit() for row in cursor.fetchall(): print row
到目前为止,我认为sql打印与通常的结构化响应不同?
http://www.easysoft.com/developer/languages/perl/sql_server_unix_tutorial.html#print_statement_status_messages有类似于我在Perl中尝试做的事情.
我能看到的最接近的是可选:
http://www.python.org/dev/peps/pep-0249/#cursor-messages所以我猜它还没有实现?
解决方法
在PRINT上使用
RAISERROR.与
NOWAIT一起使用可立即获得输出.我不知道如何在python中处理这个问题,但是在ADO.NET中你可以在sqlConnection上使用
InfoMessage事件.也许在Python中有类似的东西.