Author: Xiaohong
运行环境: OS: Win7 64位 专业版Pack1、Python: 3.7
功能: 把sqlite 3 DB 中 em_stock table 数据显示
缺点:以Label 方式显示数据,交互性差
main.py 脚本如下:
# em_stock 数据来源 见 Python Tkinter 练习1--抓取特定网页资料 中
from tkinter import *
# 导入访问Sqlite的模块
import sqlite3
def query_db():
# 1 连接sqlite3 数据库
database = sqlite3.connect("mrsoft.db")
cursor = database.cursor()
# 2 调用执行select语句查询数据
sql = "select * from em_stock "
cursor.execute(sql)
# 3 通过游标的description属性获取列信息
description = cursor.description
# 4 使用fetchall获取游标中的所有结果集
rows = cursor.fetchall()
# 5 关闭游标
cursor.close()
# 6 关闭连接
database.close()
return description, rows
def main():
description, rows = query_db()
# 创建窗口
win = Tk()
win.title('数据查询')
# 通过description获取列信息
for i, col in enumerate(description):
lb = Button(win, text=col[0], padx=15, pady=6)
lb.grid(row=0, column=i)
# 直接使用for循环查询得到的结果集
for i, row in enumerate(rows):
for j in range(len(row)):
en = Label(win, text=row[j])
en.grid(row=i+1, column=j)
win.mainloop()
if __name__ == '__main__':
main()