【发布时间】:2022-11-10 08:37:55
【问题描述】:
我开发了一个简单的开关,用flask + SQLite 改变布尔值的值。
我想在表engineering_project 上将1 更改为0 并将0 更改为1。
每种情况下都能成功刷出消息,说明 if 函数工作正常。
但是,表中的engg_proj_status 的值无法更新。
engg_proj_status 包含 0 或 1。
我仍然无法弄清楚出了什么问题。
conn = sqlite3.connect(db_path)
conn.row_factory = sqlite3.Row
c = conn.cursor()
c.execute("SELECT engg_proj_status FROM engineering_project WHERE engg_proj_id =?",(engg_proj_id,))
status = c.fetchone()[0]
if status == 1:
c.execute("UPDATE engineering_project SET engg_proj_status = ? WHERE engg_proj_id = ?;",(False,engg_proj_id))
flash("Status changed from COMPLETED to OPEN")
else:
c.execute("UPDATE engineering_project SET engg_proj_status = ? WHERE engg_proj_id = ?;",(True,engg_proj_id))
flash("Status changed from OPEN to COMPLETED")
【问题讨论】:
-
将
conn.commit()添加到您的代码中。 -
我完全忘记了。谢了哥们。