Python/MySQL-通过Tkinter将数据插入表中
我试图通过图形界面将数据插入表中,但出现以下错误: 错误 代码Python/MySQL-通过Tkinter将数据插入表中,python,mysql,tkinter,Python,Mysql,Tkinter,我试图通过图形界面将数据插入表中,但出现以下错误: 错误 代码 按钮在不带参数的情况下运行函数,因此不能使用参数声明函数 def submit(): 它应该可以解决错误消息的问题,但您仍然无法获取值 您的StringVar()在submit()中无效。您应该直接在SQL中使用条目 mysql_submit = ("INSERT INTO novo VALUES (NULL, {}, {}, {})", (e_nome.get(), e_idade.get(), e_cpf.get())) 但
按钮
在不带参数的情况下运行函数,因此不能使用参数声明函数
def submit():
它应该可以解决错误消息的问题,但您仍然无法获取值
您的StringVar()
在submit()
中无效。您应该直接在SQL中使用条目
mysql_submit = ("INSERT INTO novo VALUES (NULL, {}, {}, {})", (e_nome.get(), e_idade.get(), e_cpf.get()))
但是您应该将它直接放在execute
中,因为它期望QUERY
作为第一个参数,而值作为第二个参数。元组mysql\u submit
将被视为一个参数,而不是两个
cursor.execute("INSERT INTO novo VALUES (NULL, {}, {}, {})", (e_nome.get(), e_idade.get(), e_cpf.get()))
submit
需要参数,因此您需要command=lambda:submit(…参数…
或从定义中删除参数def submit():
在submit()
中,您应该使用nome=e_nome.get()
从条目中获取值。使用nome=StringVar()
是没有用的。其他值也是如此。
mysql_submit = ("INSERT INTO novo VALUES (NULL, {}, {}, {})", (e_nome.get(), e_idade.get(), e_cpf.get()))
cursor.execute("INSERT INTO novo VALUES (NULL, {}, {}, {})", (e_nome.get(), e_idade.get(), e_cpf.get()))