如何在Python中使用原生SQL提交UPDATE

2024-06-25 22:46:34 发布

您现在位置:Python中文网/ 问答频道 /正文

cursor = connection.cursor()
cursor.execute("UPDATE public.rsvp SET status=TRUE WHERE rsvp_id=%s", [rsvp_id])
cursor.execute("SELECT status, rsvp_id FROM public.rsvp WHERE rsvp_id=%s", [rsvp_id])
row = cursor.fetchall()

当我在我的Django项目中执行此操作时,我得到了预期返回的行,但是后来当我为同一行选择query时,它看起来好像从未真正运行过语句。在我的代码中,“status”列默认为NULL。在运行这个之后,我仍然在我的表中看到NULL。在


Tags: fromidtrueexecutestatusupdatepublicconnection
1条回答
网友
1楼 · 发布于 2024-06-25 22:46:34

您没有指定要处理的数据库,这可能会在一定程度上改变答案。但是,对于大多数数据库连接,您需要用connection.commit()完成,才能真正保存对数据库的更改。这包括更新和插入操作。未能commit()通常会导致操作回滚。在

相关问题 更多 >