1
每当我运行与postgresql数据库交互的python脚本时,它们似乎都没有效果。我没有得到任何错误,并且我的代码中的所有内容似乎都能正常执行(例如,数据库操作按预期显示后我的打印内容),但是当我稍后查看数据库时,看不到任何证据代码运行。例如,我有以下代码:更改似乎没有在Postgres DB中产生影响
def testDeleteWins():
deleteWins()
print "Old wins deleted."
def deleteWins():
DB = connect()
c = DB.cursor()
c.execute("DELETE FROM wins;")
print "Task Done!"
def connect()
print"Connected"
return psycopg2.connect("dbname=project")
,如果我跑testDeleteWins()
我看到了“任务完成!”打印出来,但是没有一条记录实际上从wins
表中删除。我需要做些什么才能让更改在数据库中生效?
谢谢,没有意识到它需要承诺,你可以请修改你的答案,但?你不应该从游标提交,而是从连接本身=> DB.commit()。甚至可能只是把最后的那个方法写出来供其他需要的人使用呢? – Bbit
@Bbit好建议和更正,完成! –