我正在通过MySQL Python Connector在MySQL表中插入记录。我正在为一个库创建一个项目。这是代码
var=StringVar()
fn=StringVar()
yn=StringVar()
ln=StringVar()
dn=StringVar()
an=StringVar()
kn=StringVar()
gn=StringVar()
mn=StringVar()
pn=StringVar()
photo=ImageTk.PhotoImage(Image.open("iplib.jpg"))
img=ImageTk.PhotoImage(Image.open("old.jpg"))
label15=Label(lib,image=img)
label15.place(x=0,y=0)
label10=Label(lib,image=photo)
label10.place(x=600,y=0)
def dynamic_data_entry():
id1=ln.get()
name1=fn.get()
auth1=dn.get()
doi1=an.get()
dor1=gn.get()
rname=kn.get()
Address=pn.get
reiss=mn.get()
gen1=var.get()
entry4.delete(0,END)
entry5.delete(0,END)
entry6.delete(0,END)
entry7.delete(0,END)
entry8.delete(0,END)
entry9.delete(0,END)
entry10.delete(0,END)
entry11.delete(0,END)
libcur.execute("INSERT INTO
tcl(Book_id,Book_name,Author,DOI,DOR,Reissues,Recipients_Name,Address,Genre)
VALUES(%s,%s,%s,%s,%s,%s,%s,%s,%s)",(id1,name1,auth1,doi1,dor1,reiss,rname,Address,gen1))
mydb.commit()
messagebox.showinfo("INSERT STATUS","RECORD HAS BEEN ADDED SUCCESSFULLY")
libcur.close()
def insert():
top=Toplevel()
top.geometry("500x500")
top.title("INSERT RECORDS")
label4=Label(top,text="Book Name:",fg="orange",font=("arial",15,"bold"))
label4.place(x=65,y=70)
entry4=Entry(top,textvariable=fn)
entry4.place(x=270,y=75)
label5=Label(top,text="Book Id:",fg="seagreen",font=("arial",15,"bold"))
label5.place(x=65,y=30)
entry5=Entry(top,textvariable=ln)
entry5.place(x=270,y=35)
label6=Label(top,text="Author:",fg="grey",font=("arial",15,"bold"))
label6.place(x=65,y=100)
entry6=Entry(top,textvariable=dn)
entry6.place(x=270,y=105)
label7=Label(top,text="Date of issuing:",fg="deepskyblue",font=("arial",15,"bold"))
label7.place(x=65,y=130)
entry7=Entry(top,textvariable=an)
entry7.place(x=270,y=135)
label8=Label(top,text="Date of return:",fg="gold",font=("arial",15,"bold"))
label8.place(x=65,y=170)
entry8=Entry(top,textvariable=gn)
entry8.place(x=270,y=175)
label9=Label(top,text="Re-issues(Yes/No):",fg="navy",font=("arial",15,"bold"))
label9.place(x=65,y=200)
entry9=Entry(top,textvariable=mn)
entry9.place(x=270,y=205)
list1= {"Adventure","Art","Children","Contemporary","Mystery","Cooking","Dystopian","Development","AutoBiography","Families","Fantasy","Fiction","Guide","Humor","History","Health","Motivational","Memoir","Novel","Paranormal","Personal","Romance","Travel"}
droplist=OptionMenu(top, var,*list1)
var.set("Select Genre")
droplist.configure(width=15)
droplist.place(x=265,y=290)
label5=Label(top,text="Genre:",fg="lightcoral",font=("arial",15,"bold"))
label5.place(x=65,y=295)
label17=Label(top,text="Recipients Name:",fg="salmon",font=("arial",15,"bold"))
label17.place(x=65,y=230)
entry10=Entry(top,textvariable=kn)
entry10.place(x=270,y=235)
label18=Label(top,text="Address:",fg="midnightblue",font=("arial",15,"bold"))
label18.place(x=65,y=260)
entry11=Entry(top,textvariable=pn)
entry11.place(x=270,y=265)
button5=Button(top,text="INSERT
RECORD",width=12,fg="white",bg="forestgreen",command=dynamic_data_entry)
button5.place(x=220,y=450)
但是我得到以下错误
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\sapna\anaconda3\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "C:\Users\sapna\Desktop\SAMARTH.py", line 70, in dynamic_data_entry
entry4.delete(0,END)
NameError: name 'entry4' is not defined
我无法理解是什么错误。我还导入了Entry Widget,但即使那样也无法解决问题,如果您能帮助我解决问题将非常有帮助 非常感谢
答案 0 :(得分:0)
您已经在创建entry4
之前对其进行了定义
将insert()
放在其他功能之前,您应该没事
如果您不是,请随时对此答案发表评论