【发布时间】:2021-01-09 05:39:03
【问题描述】:
这是我的更新:
def submit():
nama = Nama.get()
tgl_lahir = tgl_Lahir.get()
alamat = Alamat.get()
no_telp = No_telp.get()
insert = (nama,tgl_lahir,alamat,no_telp)
#connect to database
db = pymysql.connect(db="db_petugas", host="localhost", passwd="", user="root")
#prepare cursor
cur = db.cursor()
#insert into petugas table
sql = "INSERT INTO petugas VALUES ("",%s, %s, %s, %s);"
#execute sql code
cur.execute(sql, insert)
db.commit()
db.close()
#delete the entry
Nama.delete(0, END)
tgl_Lahir.delete(0, END)
Alamat.delete(0, END)
No_telp.delete(0, END)
这是我得到的错误: pymysql.err.ProgrammingError: (1064, "您的 SQL 语法有错误;请查看与您的 MariaDB 服务器版本相对应的手册,了解在 ''Vanes'、'1 June 2003'、'Grand Hill 附近使用的正确语法23', '091293812030')' 在第 1 行")
【问题讨论】:
-
最好使用占位符:
sql = "INSERT INTO petugas VALUES (%s, %s, %s, %s)",然后是cur.execute(sql, insert)。 -
感谢您回答我的问题,但我遇到了同样的错误,希望您能看到我的更新
-
你应该在
""包围的字符串中使用''。
标签: python sql tkinter pymysql tkinter-entry