gpt4 book ai didi

python - 未绑定(bind)本地错误 : local variable 'rows' referenced before assignment

转载 作者:行者123 更新时间:2023-11-29 12:47:28 25 4
gpt4 key购买 nike

我正在尝试通过其他脚本建立数据库连接。但是脚本无法正常工作。

如果我在行上执行“打印”,那么我会得到值“null”

但是如果我使用“select * from incidents”查询,那么我会从表 incidents 中得到结果。

导入数据库

rows = database.database("INSERT INTO incidents VALUES(3 ,'test_title1', 'test',     TO_DATE('25-07-2012', 'DD-MM-YYYY'), CURRENT_TIMESTAMP, 'sector', 50, 60)")
#print database.database()
print rows

database.py 脚本:

import psycopg2
import sys
import logfile

def database(query):
logfile.log(20, 'database.py', 'Executing...')
con = None

try:
con = psycopg2.connect(database='incidents', user='ipfit5', password='test')

cur = con.cursor()
#print query

cur.execute(query)
rows = cur.fetchall()

con.commit()


#test row does work
#cur.execute("INSERT INTO incidents VALUES(3 ,'test_titel1', 'test', TO_DATE('25-07-2012', 'DD-MM-YYYY'), CURRENT_TIMESTAMP, 'sector', 50, 60)")

except:
logfile.log(40, 'database.py', 'Er is iets mis gegaan')
logfile.log(40, 'database.py', str(sys.exc_info()))

finally:

if con:
con.close()
return rows

最佳答案

因为你没有在你的“try:” block 之前声明“行”,如果有异常,它不会被定义。尝试将 rows = [] 放在 try 之上。

关于python - 未绑定(bind)本地错误 : local variable 'rows' referenced before assignment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12308706/

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