可能是因为你没有提交事务,代码示例:
import psycopg2
# 连接数据库
conn = psycopg2.connect(database="mydbname", user="myusername", password="mypassword", host="localhost", port="5432")
cur = conn.cursor()
try:
# 开始一个事务
conn.autocommit = False
# 执行更新操作
cur.execute('''UPDATE mytable SET myfield=%s WHERE id=%s''', ('newvalue', 1))
# 提交事务
conn.commit()
except Exception as e:
# 回滚事务
conn.rollback()
print(str(e))
finally:
# 关闭数据库连接
cur.close()
conn.close()
在这个示例中,我们开始一个事务,并在更新操作完成后提交该事务。如果出现错误,事务将被回滚,以确保数据一致性。