Performance management system, unfinished, continue tomorrow
import pymysql
from tkinterimport *
db=pymysql.Connect(host='localhost',port=3306,user='root',passwd='4758stuv870399',db='stuadm',charset='utf8')
cursor=db.cursor()
def showTheTable(Listbox):
Listbox.delete(0,END)
data=[]
sql1 = "SELECT * FROM studentadm_information" # sql statement structure
cursor.execute (sql1) # get the original language performance
all_data=cursor.fetchall()
for iin all_data:
dd=i[0]+str(i[1])+i[2]
Listbox.insert(END,dd)
def updateTheTable (): # update, access data, perform sql update form
var1=entry1.get()
var2=int(entry2.get())
var3=entry3.get()
sql= "INSERT INTO studentadm_information values\
('%s',%d,'%s')" % (var1,var2,var3)
print(sql)
try:
cursor.execute (sql) # no abnormal submit data,
db.commit()
print ( "Student Information submitted successfully!")
except:
print ( "upload information failed!")
db.rollback()
showTheTable(mylist)
def changeTheTable (): # sql delete structure
var1=entrya.get()
var2=int(entryb.get())
var3 = entryc.get ()
try:
sql3= "UPDATE studentadm_information set student_name=\'%s\',student_phoneNumber=%s WHERE student_id=%d" % (var1, var3, var2)
print(sql3)
cursor.execute(sql3)
db.commit()
except:
db.rollback()
showTheTable(mylist)
def deleteTheTable():
var1=int(entryp.get())
sql= "DELETE FROM studentadm_information where student_id=%d" % (var1)
try:
cursor.execute(sql)
db.commit()
print ( "deleted successfully")
except:
db.rollback()
showTheTable(mylist)
def checkTheTable():
var1= int(entryA.get())
sql1= "SELECT * FROM studentadm_information where student_id=%d" % (var1);
try:
cursor.execute(sql1)
s= cursor.fetchone()
print(s)
if s== None:
print ( "The students do not exist!")
db.commit()
var2=s[1]
var3=s[2]
entryB.setvar (var2)
entryC.setvar (var3)
except:
db.rollback()
showTheTable(mylist)
window=Tk()
window.geometry ( "700x500") # main window
top = Frame (window, height = 200, width = 600, bg = 'green'); # Student Information Display
scrolls = Scrollbar (top)
scrollar.pack (= right side, fill = Y)
mylist = Listbox (top, height = 10, width = 50, yscrollcommand = scrollar.set) # Bind drop-down event
entry1 = Entry (window) # 1,2,3 increase button
entry2=Entry(window)
entry3=Entry(window)
entrya = Entry (window) #abc is altered
entryb=Entry(window)
entryc = Entry (window)
entryA = Entry (window) #ABC is viewed
entryB=Entry(window)
entryC = Entry (window)
entryp = Entry (window) #p is used to specify the deleted object
entry1.place(x=50,y=300)
entry2.place(x=200,y=300)
entry3.place(x=350,y=300)
entrya.place(x=50,y=340)
entryb.place(x=200,y=340)
entryc.place (x = 350, y = 340)
entryA.place(x=50,y=450)
entryB.place(x=250,y=450)
entryC.place (x = 450, y = 450)
entryp.place(x=350,y=380)
bt1=Button(window,text="增加",command=updateTheTable)
bt1.place(x=520,y=290)
bt2=Button(window,text="改动",command=changeTheTable)
bt2.place(x=520,y=330)
bt3=Button(window,text="删除",command=deleteTheTable)
bt3.place(x=520,y=370)
bt4=Button(window,text="查看",command=checkTheTable)
bt4.place(x=200,y=450)
showTheTable(mylist)
scrollar.config(command=mylist.yview)
mylist.pack(side=LEFT)
top.pack()
window.mainloop ()