python - 没有错误产生,但数据库中的记录没有更新
问题描述
def amendStaff():
global STAFFIDVar,STAFF_FORENAMEVar,STAFF_SURNAMEVar,STAFF_DOBVar,STAFF_CONTACTVar,STAFF_EMAILVar,STAFF_ADDRESSVar,STAFF_POSTCODEVar
#getting the variable from the entry form
STAFFID=STAFFIDVar.get()
STAFF_FORENAME = STAFF_FORENAMEVar.get()
STAFF_SURNAME = STAFF_SURNAMEVar.get()
STAFF_DOB = STAFF_DOBVar.get()
STAFF_CONTACT = STAFF_CONTACTVar.get()
STAFF_EMAIL = STAFF_EMAILVar.get()
STAFF_ADDRESS = STAFF_ADDRESSVar.get()
STAFF_POSTCODE = STAFF_POSTCODEVar.get()
conn=sqlite3.connect('Database.db') #opens the database
cursor = conn.execute('SELECT * FROM STAFF')
cursor.execute('UPDATE STAFF SET STAFF_FORENAME = ? ,STAFF_SURNAME=? ,STAFF_DOB = ? , STAFF_CONTACT=? ,STAFF_EMAIL=?, STAFF_ADDRESS=? ,STAFF_POSTCODE=? WHERE STAFFID = ?', (STAFFID,STAFF_FORENAME,STAFF_SURNAME,STAFF_DOB,STAFF_CONTACT,STAFF_EMAIL,STAFF_ADDRESS,STAFF_POSTCODE))
#amends the record
conn.commit() #saves the changes
conn.close() #closes the database
messagebox.showinfo("DATABASE ACTION",str("Record Updated"))
解决方案
更新中的参数乱序,staffid 应该排在最前面。
推荐阅读
- c++ - 创建临时文件时 std::function 内存访问错误
- macros - 通过 FTL 更改对象属性
- mongodb - MongoDB - 更新所有记录中的字段类型
- python - 当我将结果写入文本文件时,只出现一个段落
- mendeley - 在 Biblio 中修改 et al 的用法
- angular6 - 通过检查角度 6 中的条件来添加类
- authentication - 是否可以使用不记名令牌来验证同一服务器上的两个 webapi 系统?
- php - Laravel Carbon 从当前日期获取特定日期的下一次出现
- excel - EXCEL:计算唯一值的组合
- javascript - 如何将 Java 脚本中的值分配给系统类中的属性