import sqlite3
import tkinter as tk
from tkinter import ttk
from tkinter import messagebox
from tkinter import filedialog
db=sqlite3.connect("d:/chang.db")
sql = "create table if not exists student (data date, score integer ,jl text,picture blob)"
cur = db.cursor()
cur.execute(sql)
cur.close()
db.close()
win=tk.Tk()
win.geometry('800x600')
tk.Label(win, text="日期").grid(row=0, column=0)
date=tk.StringVar()
tk.Entry(win,textvariable=date).grid(row=0,column=1)
tk.Label(win, text="分数").grid(row=1, column=0)
score = tk.StringVar()
tk.Entry(win, textvariable=score).grid(row=1, column=1)
tk.Label(win, text="奖励与否").grid(row=2, column=0)
gave=tk.StringVar()
tk.Entry(win, textvariable=gave).grid(row=2, column=1)
def callback():
fileName = tk.filedialog.askopenfilename(filetypes=[("PNG", ".png"), ("JPG", ".jpg"), ("GIF", ".gif")])
return(fileName)
def check():
db = sqlite3.connect("d:/chang.db")
cur = db.cursor()
w=cur.execute('select sum(score) from student where (data>="%s" and data<="%s")'%(var1.get(),var2.get()))
db.commit()
q=w.fetchone()[0]
print(q)
def insert():
if score.get()!='' and date.get()!='' and gave.get()!='':
w=()
db = sqlite3.connect("d:/chang.db")
cur=db.cursor()
#获取完整选择照片路径
if bianbie()!=0:
#sql2 = 'insert into student values("%s","%s","%s")' % (
# date.get(), score.get(), gave.get())'''
flagp=messagebox.askyesno("照片信息","需要添加照片信息")
if flagp==True:
picaddress=callback()
print(picaddress)
f=open(picaddress,'rb')
img=f.read()
f.close()
sql2='insert into student values(?,?,?,?)'
w=(date.get(), score.get(),gave.get(),None)
cur.execute(sql2,w)
ddd=date.get()
sql3="update student set picture=? where data=ddd"
cur.execute(sql3,(img,))
db.commit()
else:
sql2='insert into student values(?,?,?)'
w=(date.get(), score.get(),gave.get())
messagebox.showinfo("录入数据成功", "时间"+date.get())
cur.close()
db.close()
else:
messagebox.showerror("重复录入","你输入日期与系统重复")
else:
messagebox.showerror("无效输入", "请输入完整信息")
insertButton = tk.Button(win, text='录入', width=3,
height=1, command=insert).grid(row=3, column=1, pady=1)
#tk.Button(win, text="添加照片", command=callback).grid(row=3,column=3)
def bianbie():
db = sqlite3.connect("d:/chang.db")
cur = db.cursor()
sql1 = 'select data from student'
s=cur.execute(sql1)
r = [a for a in s.fetchall()]
for k in r:
if k[0]==date.get():
return(0)
win.mainloop()
# chuck.py
# w.py