python做查询界⾯_python制作⼀个简单的gui数据库查询界⾯⼀、准备⼯作:
1、安装mysql3.7,创建⼀个test数据库,创建student表,创建列:(列名看代码),创建⼏条数据
(以上⼯作直接⽤navicat for mysql⼯具完成)
⼆、代码:
import sys
import tkinter as tk
tor as sql
tracking#--------------------查询函数---------------------------
def sql_connect():
listbox_show.delete(0,'end') #初始化清空显⽰区
m = listbox_name.curselection()[0]
print('m=',m)
list_name = (m)[0]
varlue = ()
print('list_name=',list_name)
print('var=',varlue)
while list_name == 'Student_ID':
sql_sr = "select * from Student where student.student_id = " + "'" + varlue +"'"
print(sql_sr)
break
while list_name == 'Name':
sql_sr = "select * from Student where student.name = " + "'" + varlue +"'"
print(sql_sr)
break
while list_name == 'Age':
sql_sr = "select * from Student where student.age = " + "'" + varlue +"'"
print(sql_sr)
break
while list_name == 'Sex':
sql_sr = "select * from Student where student.sex = " + "'" + varlue +"'"
print(sql_sr)
break
while list_name == 'Class':
sql_sr = "select * from Student where student.class = " + "'" + varlue +"'"
print(sql_sr)
break
mydb = t(host='localhost',user='root',passwd='123456',database='test') mycursor = mydb.cursor()
myresult = mycursor.fetchall()
for x in myresult:
print (x)
listbox_show.insert('end',x)
#--------------------------------------------------------
#------------界⾯初始化时加载选项列表--------------------
考试倒计时代码05网电子书sql_n = "SELECT COLUMN_NAME FROM information_schema.COLUMNS \ WHERE TABLE_SCHEMA = 'test' AND TABLE_NAME = 'student'"
mydb = t(host='localhost',user='root',passwd='123456',database='test') mycursor = mydb.cursor()
myresult = mycursor.fetchall()
#--------------------------------------------------------
#----------窗体部分--------------------------------------
entry_list_name = tk.Entry()
entry_list_name.pack()
listbox_name = tk.Listbox()
listbox_name.pack()
for i in myresult:
listbox_name.insert('end',i) #加载选项列表
entry_varlue = tk.Entry()
entry_varlue.pack()
button_select = tk.Button(text = '查',command = sql_connect)
button_select.pack()
listbox_show = tk.Listbox()
listbox_show.pack()
root.mainloop()
#--------------------------------------------------------
三、界⾯
好吧,是挺丑的,因为没调格式,将就吧。
四、总结
1、⽬的:⾃⼰这个菜鸟新⼿天天看基础教程觉得很抽象,各种运算结果只能打印在IDE窗⼝,不是我想象中的程序(有界⾯,有交互,有。。。总之很精彩),然后按教程的各种渐进学法感觉不太适合⾃⼰的风格,我喜欢有⼀个具体的东西,不断的添加功能,然后在添加的过程中碰到问题再寻求解决办法,在解决的过程中学习新知识,嗯,就是只学能⽤到的,很功利。。。然后就开始折腾这个⼩界⾯。
css div宽度根据文字多少自适应2、⾸先要有GUI界⾯就要⽤到GUI模块,本着⽅便原则就⽤python⾃带的tkinter(不⽤再折腾安装),⼀开始我想⽤所见即所得的⽅式,到了⼀个可以拖放元件来⽣成界⾯的⼯具page python,这也是个基于tkinter的⼯具,后来发现⽣成的py⽂件对我这个菜鸟来说还是有点深奥了,⽽且关于page的教程全⽹只有⼀两个(⽆语,估计⾼⼿都不屑吧),然后就转⽽直接研究tkinter
3、先做好窗体部分的实现代码。
mysql安装教程菜鸟课程设计:按动按钮查询固定表⾥某⼀字段的某个匹配值的结果,显⽰在界⾯中。
元件:输⼊元件2个(1个字段,1个值),结果显⽰元件1个,按钮1个。
字段输⼊值直接获取表头列出选择,不到下拉菜单,只能⽤listbox来做,界⾯初始化时就将表头读出列在listbox⾥。
匹配值输⼊使⽤entry输⼊框。
显⽰结果也是使⽤listbox。
交互动作使⽤按钮。
俄方:只要基辅愿意冲突可随时结束
OK,视觉界⾯做好了,下⾯添加功能。
4、(字段输⼊值直接获取表头列出选择,不到下拉菜单,只能⽤listbox来做,界⾯初始化时就将表头读出列在listbox⾥。)
要和mysql交互获取,需要登录数据库并实现查询。
我使⽤tor模块来实现和mysql的通讯(python还有期它模块也能实现和mysql的通讯,当时为什么使⽤
5、接下来就是按钮动作的交互代码了,这是逻辑的重头戏。
逻辑:在列出的字段中选择⼀个要查询的字段,输⼊要匹配的值,点击按钮查询,将结果显⽰在显⽰区。
获取listbox的光标值,将它取出来,⽐对字段⽣成相应的sql查询语句,和mysql交互得到返回值集,逐条取出展⽰在显⽰区。
好了,⼤功告成,虽然看起来很丑,想让它变美⼥就要加滤镜咯(调tkinter格式)。
以上就是python制作⼀个简单的gui 数据库查询界⾯的详细内容,更多关于python gui数据库查询的资料请关注脚本之家其它相关⽂章!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。