python - SQL语句中并未使用所有参数使用python插入表

标签 python mysql tkinter

我正在尝试将从 tkinter 小部件检索的数据提交到 SQL 表中(该表已创建,并且列名称为 LeaderID、名字、名字、年龄、地址、邮政编码、电话、电子邮件)。尽管重新制作表、重写 SQL、重置数据库服务器等,我仍然收到错误。此代码包含在由 tkinter 按钮激活的函数中。所有输入的数据都是使用 .get() 语法从每个 tkinter 小部件检索的。

LeaderID=random.randint(1,10000)
print(LeaderID)
sqlcommand="INSERT INTO leaderinfo (leaderID, firstname,secondname,age,address,postcode,telephone,email) VALUES (%s, %s, %s, %s, %s, &s, &s, %s)"
LeaderInput= (LeaderID,FName.get(),SName.get(),Age.get(),Address.get(),Postcode.get(),TelephoneNum.get(),Email.get())
mycursor.execute(sqlcommand,LeaderInput)
mydb.commit()
print("Completed Transaction")

产生错误

mysql.connector.errors.ProgrammingError: Not all parameters were used in the SQL statement

此外,我想知道如何使代码看起来更易读,正如您从代码中看到的那样,它们是相当长的一行代码,包含很多占位符“%s”,我可以将它们移动到不同的线路?

如果您希望我提供更多信息,请告诉我。

谢谢

最佳答案

您的某些参数使用的是 &s 而不是 %s。修复它,你应该没问题:

sqlcommand="INSERT INTO leaderinfo (leaderID, firstname,secondname,age,address,postcode,telephone,email) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)"
# Here ------------------------------------------------------------------------------------------------------------------------------^---^

关于python - SQL语句中并未使用所有参数使用python插入表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52690173/

相关文章:

python - 如何将多个 Canvas 元素绑定(bind)在一起以同时更改它们的颜色?

python - 使用 Python 插入 Elasticsearch 数据

php - MySQL SSL远程连接错误: Unable to get Private Key

mysql - 注释导致 MySQL 脚本出错

c++ - build 和 make 的区别?

python - Tkinter 菜单命令目标函数带参数?

python - 如何在tkinter中设置行与列之间的间距

Python - 如何在 gtk.Window 中加载 Google Chrome 或 Chromium 浏览器,如 webkit.WebView()?

python - 如何在类对象中为 `dtype`参数引发错误

python - PyGTK:CellRendererPixbuf 和透明度