You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何读取Access表数据并在Tkinter窗口中展示

Access数据在Tkinter窗口展示实现方案

你现有pyodbc读取数据的逻辑已经可以正常拿到结果,不需要改动核心查询部分,只要把控制台打印的逻辑替换为Tkinter表格渲染即可。Tkinter内置的ttk.Treeview是做表格展示最方便的选择,无需额外安装第三方依赖,适配性稳定。

完整可运行代码

import pyodbc
import tkinter as tk
from tkinter import ttk

# ---------------------- 读取Access数据部分 ----------------------
# 替换为你的实际数据库文件路径
db_path = r"C:\你的文件存储路径\数据库文件.ACCDB"
# 替换为你要查询的实际表名
target_table = "目标数据表名"

conn = pyodbc.connect(
    r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=' + db_path + ';'
)
cursor = conn.cursor()
cursor.execute(f'select * from {target_table}')

# 自动提取查询结果的列名
columns = [col_info[0] for col_info in cursor.description]
# 读取所有行数据
table_rows = cursor.fetchall()
# 关闭数据库连接
cursor.close()
conn.close()

# ---------------------- Tkinter窗口渲染部分 ----------------------
root = tk.Tk()
root.title("Access数据展示")
root.geometry("900x500") # 初始窗口大小,可根据需要调整

# 配置横向、纵向滚动条
scroll_y = ttk.Scrollbar(root, orient="vertical")
scroll_x = ttk.Scrollbar(root, orient="horizontal")

# 初始化表格控件
data_table = ttk.Treeview(
    root,
    columns=columns,
    show="headings", # 隐藏默认的首列树状图标
    yscrollcommand=scroll_y.set,
    xscrollcommand=scroll_x.set
)

# 绑定滚动条和表格的滚动联动
scroll_y.config(command=data_table.yview)
scroll_x.config(command=data_table.xview)

# 循环设置每一列的标题和默认宽度
for col in columns:
    data_table.heading(col, text=col)
    data_table.column(col, width=150, anchor="center") # 列宽默认150px,内容居中

# 把读取到的所有行插入表格
for row in table_rows:
    data_table.insert("", "end", values=list(row))

# 排布控件位置,支持窗口缩放时表格自动适配大小
scroll_y.pack(side="right", fill="y")
scroll_x.pack(side="bottom", fill="x")
data_table.pack(fill="both", expand=True)

root.mainloop()

注意事项

  • 运行前如果没装pyodbc,执行命令pip install pyodbc完成安装即可
  • 数据库路径前加r是为了避免Windows路径里的反斜杠触发转义错误,不要随意删除
  • 如果某一列内容较长,可以单独调整对应列的width参数,比如备注、地址类的列可以把宽度设为250以上
  • 如果连接数据库时提示驱动不存在,检查本地Office的位数(32/64位),安装对应版本的Microsoft Access Database Engine驱动即可
  • Treeview本身支持行选中、点击列头排序、单元格编辑等扩展功能,后续需要交互逻辑可以直接在这个代码基础上追加

内容的提问来源于stack exchange,提问作者Chakot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 08:21:24