以下代码使用 Python 的 Tkinter 库创建了一个简单的 MySQL 可视化界面,允许用户输入连接信息、执行 SQL 查询并查看结果。

import tkinter as tk
import pymysql

# 创建窗口
root = tk.Tk()
root.title('MySQL 可视化界面')

# 添加标签
label1 = tk.Label(root, text='MySQL 连接信息', font=('Arial', 18))
label1.grid(row=0, column=0, sticky='W', padx=20, pady=10)

# 添加标签和文本框
label2 = tk.Label(root, text='主机地址:')
label2.grid(row=1, column=0, padx=20, pady=10)
entry1 = tk.Entry(root)
entry1.grid(row=1, column=1)

label3 = tk.Label(root, text='用户名:')
label3.grid(row=2, column=0, padx=20, pady=10)
entry2 = tk.Entry(root)
entry2.grid(row=2, column=1)

label4 = tk.Label(root, text='密码:')
label4.grid(row=3, column=0, padx=20, pady=10)
entry3 = tk.Entry(root, show='*')
entry3.grid(row=3, column=1)

label5 = tk.Label(root, text='数据库名称:')
label5.grid(row=4, column=0, padx=20, pady=10)
entry4 = tk.Entry(root)
entry4.grid(row=4, column=1)

# 添加连接按钮
def connect_mysql():
    host = entry1.get()
    user = entry2.get()
    password = entry3.get()
    db = entry4.get()
    try:
        conn = pymysql.connect(host=host, user=user, password=password, db=db, charset='utf8mb4')
        listbox1.insert(tk.END, '数据库连接成功!')
        button2.config(state='normal')
    except Exception as e:
        listbox1.insert(tk.END, '数据库连接失败:' + str(e))

button1 = tk.Button(root, text='连接', font=('Arial', 14), command=connect_mysql)
button1.grid(row=5, column=1, padx=20, pady=10)

# 添加列表框
listbox1 = tk.Listbox(root, width=80)
listbox1.grid(row=6, columnspan=2, padx=20, pady=10)

# 添加查询按钮
def query_mysql():
    sql = entry5.get()
    try:
        conn = pymysql.connect(host=entry1.get(), user=entry2.get(), password=entry3.get(), db=entry4.get(), charset='utf8mb4')
        listbox1.insert(tk.END, '数据库连接成功!')
        cursor = conn.cursor()
        cursor.execute(sql)
        rows = cursor.fetchall()
        for row in rows:
            listbox1.insert(tk.END, row)
        cursor.close()
        conn.commit()
        conn.close()
        listbox1.insert(tk.END, '查询成功!')
    except Exception as e:
        listbox1.insert(tk.END, '查询失败:' + str(e))

label6 = tk.Label(root, text='请输入SQL语句:')
label6.grid(row=8, column=0, padx=20, pady=10)
entry5 = tk.Entry(root, width=100)
entry5.grid(row=8, column=1)

button2 = tk.Button(root, text='查询', font=('Arial', 14), command=query_mysql, state='disable')
button2.grid(row=9, column=1, padx=20, pady=10)

root.mainloop()

代码说明:

  1. 导入必要的库:tkinter 用于创建 GUI 界面,pymysql 用于连接 MySQL 数据库。
  2. 创建窗口:使用 tk.Tk() 创建主窗口,并设置标题。
  3. 添加标签和文本框:使用 tk.Label()tk.Entry() 创建标签和文本框,用于输入数据库连接信息。
  4. 添加连接按钮:使用 tk.Button() 创建连接按钮,并绑定 connect_mysql 函数,该函数使用 pymysql 库连接到 MySQL 数据库。
  5. 添加列表框:使用 tk.Listbox() 创建列表框,用于显示数据库连接状态和查询结果。
  6. 添加查询按钮:使用 tk.Button() 创建查询按钮,并绑定 query_mysql 函数,该函数使用 pymysql 库执行 SQL 查询并显示结果。
  7. 运行主循环:使用 root.mainloop() 运行 Tkinter 事件循环,使界面保持响应。

注意:

  • 代码中的 pymysql 库需要安装。可以使用 pip 命令安装:pip install pymysql
  • 代码中的数据库连接信息需要修改为您的实际数据库信息。
  • 代码中的 SQL 语句需要修改为您的实际查询语句。

该代码提供了一个简单的 MySQL 可视化界面,可以方便地连接数据库并执行简单的查询操作。您可以根据自己的需求对代码进行扩展和改进。

Python MySQL 可视化界面 - 使用 Tkinter 创建数据库连接和查询工具

原文地址: https://www.cveoy.top/t/topic/nYST 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录