在PyQt中连接SQL数据库,你可以使用QSqlDatabase
类来创建一个数据库连接。以下是一个基本的示例,展示了如何使用PyQt5和MySQL数据库进行连接:
首先,确保你已经安装了PyQt5和MySQL的Python驱动(如mysqlclient
或PyMySQL
)。
然后,你可以使用以下代码来连接到MySQL数据库:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QVBoxLayout, QWidget
from PyQt5.QtSql import QSqlDatabase, QSqlQuery
def create_connection():
db = QSqlDatabase.addDatabase('QMYSQL') # 使用QMYSQL驱动
db.setHostName('localhost') # 设置数据库主机名
db.setDatabaseName('your_database_name') # 设置数据库名
db.setUserName('your_username') # 设置数据库用户名
db.setPassword('your_password') # 设置数据库密码
if not db.open():
print("Error: Unable to connect to database")
return False
return True
def query_data():
if not db.open():
print("Error! Cannot open database")
return
query = QSqlQuery()
query.exec_("SELECT * FROM your_table_name") # 替换为你的表名
while query.next():
print(query.value(0).toString()) # 打印第一列的值,你可以根据需要修改
app = QApplication(sys.argv)
main_window = QMainWindow()
if create_connection():
query_data()
main_window.show()
sys.exit(app.exec_())
请注意,你需要将your_database_name
、your_username
、your_password
和your_table_name
替换为实际的数据库名称、用户名、密码和表名。
此外,如果你使用的是PyMySQL
作为驱动,你需要在代码开始处添加以下行来导入它:
import pymysql
并相应地更改QSqlDatabase.addDatabase('QMYSQL')
为QSqlDatabase.addDatabase('QMySQL')
。
希望这可以帮助你开始使用PyQt连接SQL数据库!