我有这段代码
from win32com.client import Dispatch
connection_string = "Provider=SQLNCLI;server=%s;initial catalog=%s;user id=%s;password=%s"%(server,db_name,user,pwd)
dbConn = Dispatch("ADODB.Connection")
dbConn.Open( connection_string )
( rs, result ) = s.dbConn.Execute( query_string )
while not rs.EOF:
for field in rs.Fields :
dic[str( field.name )] = str( field.value )
print dic
rs.MoveNext()
它可以在'select','insert'和'update'操作中正常工作。
代码执行存储过程,但它会关闭while语句之前的记录集。
这是错误:
... pywintypes.com_error:(-2147352567,'异常发生。',(0,u'ADODB.Recordset',当对象关闭时,不允许操作。'...
答案 0 :(得分:0)
不确定这是否有帮助,但这里是如何使用pyODBC:
cn = pyodbc.connect("DSN=myDBName")
cn.autocommit = True
cr = cn.cursor()
cr.execute("set nocount on")
cr.execute("exec myStoredProc")
...
cr.close()
cn.close()