admin

函数序列错误(0)(SQLFetch)-SQL,Pyodbc

sql

for _item in file_list:
    for col in cursor.execute("select column1,column2 from tbl"):
        if _item[0]==col.column1:
            #I also tried using a different cursor, still doesn't work
            var1 = cursor.execute("select column2 from tbl where column1=?", _item[0])
            for i in var1: var2 = i[0]
            try:
                cursor3.execute("insert into tbl(column2,column1,column3,column4) values (?,?,?,?)", (var1, _item[0],_item[1],_item[2]))
                cursor3.commit() 
            except IOError as error:
                print error

我想做的是比较列表中的值和column1中的值,如果它们匹配,则从同一行的column2中获取值,然后用column2中的值添加新行,但其余值不同。

但是不幸的是,当我在python上面运行代码时抛出错误:

Error: ('HY010', '[HY010] [Microsoft][ODBC Driver Manager] Function sequence error (0) (SQLFetch)')

排队:

for columnrow in cursor.execute("select column1,column2 from tbl")

阅读 200

收藏
2021-06-07

共1个答案

admin

您正在做什么,应该按照@ScottMorken对这个答案的评论进行操作。


旧答案:
您需要使用以下方法检索查询结果:.fetchall()
因此,您可以执行以下操作来代替该行:

for columnrow in cursor.execute("select column1,column2 from tbl").fetchall():
    ...
2021-06-07