我创建了一个函数,它应该更新表的条目。该条目由用户指定。当我运行该程序时,我没有收到任何错误。本应更新
的条目并未更新。
def updateEnc(pos, key):
my_cursor = mydb.cursor()
if pos.upper() == "NAME":
sql = "UPDATE encounter SET name = %s WHERE id = %s"
id = key
name = (input("Enter name: "))
my_cursor.execute(sql, name, id)
mydb.commit() #mydb = my database
elif pos.upper() == "DESCRIPTION":
sql = "UPDATE encounter SET description = %s WHERE id = %s"
id = key
description = input("Enter description: ")
my_cursor.execute(sql, description, id)
mydb.commit()
表格的填充方式如下:
name: change
description: keep
id: 1
name: keep2
description: keep3
id: 2
调用 UPDATE
函数后,它应该如下所示:
name: change
description: keep
id: 1
name: keep2
description: keep3
id: 2
但即便如此,它也不会更新
感谢您的宝贵时间。祝你今天休息愉快!
最佳答案
当您打开与数据库的连接并开始进行查询时,它们是事务的一部分,在调用“提交”更改的方法之前不会提交到数据库。此方法的确切语法取决于您用来连接数据库的内容,但一般采用 connection.commit()
形式。
MySQL docs where this is explained in more detail
如果您在此处发布的内容之外添加了此行,请将其余相关代码添加到您的问题中。
关于python - 更新函数不更新表条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55976638/