用python tkinter做一个简单的mysql查询界面

import tkinter as tk
import pymysql
import pandas as pd
window = tk.Tk()
window.title('号码查询')
##窗口尺寸
window.geometry('200x200')
#定义一个输入框entry
g=tk.Entry(window,show=None)#如果是输入密码,可以写show='*'
g.pack()

va="号码正常"
v="号码不正常"
def qk():
    if len(g.get()) == 0:
        t.delete("1.0", "end")#清空文本框
        t.insert("end","号码不能为空")#这里还可以定义字符串插入的具体位置,比如t.insert('1.1',"号码不能为空"),表示插入到第一行第一列
    elif len(g.get()) !=11:
        t.delete("1.0", "end")#清空文本框
        t.insert("end",v)
    elif len(g.get()) ==11:
        t.delete("1.0", "end")#清空文本框
        conn= pymysql.connect(host='localhost',port=3306,user='root',passwd='123456789',db='sys',charset='utf8')
        cursor = conn.cursor()
        nn0=g.get()
        nn1="坐席"
        nn2="rs"
        sql="select {1},{2} from mysql.sheet1 where rs={0}".format(nn0,nn1,nn2)#这里的mysql语法和平时用的一样,.format传参
        cursor.execute(sql)
        data1=cursor.fetchall()
        df1=pd.DataFrame(list(data1),columns=["坐席","号码"])
        var=df1
        t.insert('insert',var)   
#def insert_end():
    #var=e.get()
    #t.insert('end',var)#这里还可以定义字符串插入的具体位置,比如t.insert('1.1',var),表示插入到第一行第一列
# 定义清空文本框的函数

#定义1个按钮 Butto
b1 = tk.Button(window,text="查询",width=15,height=2,command=qk)
b1.pack() 

#定义一个文本框 Text 
t=tk.Text(window,width=30,height=15) 
t.pack() ##显示出来 

window.mainloop()

你可能感兴趣的:(python,mysql,tkinter)