使用 pymysql 将 Python 连接到 mysql

Posted

技术标签:

【中文标题】使用 pymysql 将 Python 连接到 mysql【英文标题】:Connecting Python to mysql using pymysql 【发布时间】:2021-11-16 20:56:02 【问题描述】:

我需要使用pymysql 将Python 与mysql 连接,但我不想选择特定数据库,而是想从该服务器/主机中可用的数据库列表中选择它。这可能吗?

我试图制作一个 GUI,并且需要知道我是否应该添加一个数据库字段(客户永远不会知道)。我应该添加任何字段吗?在没有提到数据库的情况下,我应该如何让它连接到服务器本身?

This is my GUI.


代码:

from tkinter import *
root=Tk()
root.geometry("300x200")
label=Label(root,text="this is server connection table".upper(),font=("Arial",9,"bold")).place(x=45,y=3)

HOST=Label(root,text="HOST name:".upper(),font=("Arial",9,"bold")).place(x=20,y=40)
TAB1=Entry(root,bd=1).place(x=105,y=42,width=120)

USER=Label(root,text="USERNAME:".upper(),font=("Arial",9,"bold")).place(x=20,y=60)
TAB2=Entry(root,bd=1).place(x=105,y=62,width=120)

PASSWORD=Label(root,text="PASSWORD:".upper(),font=("Arial",9,"bold")).place(x=20,y=80)
TAB3=Entry(root,bd=1).place(x=105,y=82,width=120)

Submit=Button(text="submit".upper(),bd=1).place(x=150,y=150)
exit=Button(text="EXIT".upper(),bd=1,command=root.quit).place(x=220,y=150)

root.mainloop()

【问题讨论】:

【参考方案1】:

如果不支持在不指定数据库的情况下进行连接,您可以尝试在用户按下提交后连接到 information_schema 数据库。建立此连接后,尝试选择主机上的所有数据库名称。 (例如,通过使用 MySQL 的“SHOW DATABASES”),您可以将此数据作为列表输入到下拉菜单中(例如:https://www.delftstack.com/howto/python-tkinter/how-to-create-dropdown-menu-in-tkinter/)

【讨论】:

以上是关于使用 pymysql 将 Python 连接到 mysql的主要内容,如果未能解决你的问题,请参考以下文章

Python mysql(使用pymysql)自动重新连接

使用 PyMySQL,我无法连接到 RDS

如何使用 Python 3.6 将 pymysql 模块安装到 AWS Lambda [重复]

SQLAlchemy 和 PyMySQL 在连接到 AWS RDS 后拒绝连接到“localhost”

什么是PyMysql?

如何使用 Python 连接到 AWS RDS MySql 数据库