需要 %d 格式,而不是 tkinter python 到 mysql 数据库中的 str 错误
Posted
技术标签:
【中文标题】需要 %d 格式,而不是 tkinter python 到 mysql 数据库中的 str 错误【英文标题】:%d format is required not str error in tkinter python to mysql database 【发布时间】:2021-01-27 14:13:12 【问题描述】:我的条目小部件
e2 = Entry(f, width=20)
e2.place(x=280,y=120)
我把它改成了int类型
def add_data():
roll=int(e2.get())
我将数据插入 mysql 的查询
cursor.execute('insert into first_year( name,roll_number,phone_no, MATH,English,science) values(%s,%d,%s,%s,%s,%s)',(name, roll, phone_no, math, Eng, sci))
错误
%d format: a number is required, not str
【问题讨论】:
您的add_data
不会返回或更改任何内容。您可能想了解更多关于 variable scope
的信息。
我的查询和 roll=int(e2.get()) 在同一个函数中
只需将 %d 更改为 %s
【参考方案1】:
只需将 %d 更改为 %s(即使是数字),因为占位符不是常规 Python,因为您可以红色 here
cursor.execute('''insert into first_year( name,roll_number,phone_no,
MATH,English,science) values(%s,%s,%s,%s,%s,%s)''',
(name, roll, phone_no, math, Eng, sci))
【讨论】:
不会让用户也输入字符串等等让我试试以上是关于需要 %d 格式,而不是 tkinter python 到 mysql 数据库中的 str 错误的主要内容,如果未能解决你的问题,请参考以下文章
Python:Tkinter:为啥是 root.mainloop() 而不是 app.mainloop()