在Ubuntu下使用PyQt与数据库交互通常需要使用Python的数据库模块来连接数据库,比如MySQL、PostgreSQL等。以下是一个使用PyQt和MySQL数据库进行交互的简单示例:
pip install PyQt5
pip install mysql-connector-python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QLineEdit, QTextEdit
import mysql.connector
class DatabaseWindow(QMainWindow):
def __init__(self):
super(DatabaseWindow, self).__init__()
self.setWindowTitle("Database Interaction")
self.setGeometry(100, 100, 400, 300)
self.query_input = QLineEdit(self)
self.query_input.setGeometry(50, 50, 300, 30)
self.result_display = QTextEdit(self)
self.result_display.setGeometry(50, 100, 300, 150)
self.query_button = QPushButton("Run Query", self)
self.query_button.setGeometry(150, 250, 100, 30)
self.query_button.clicked.connect(self.run_query)
def run_query(self):
query = self.query_input.text()
conn = mysql.connector.connect(
host="localhost",
user="username",
password="password",
database="database_name"
)
cursor = conn.cursor()
cursor.execute(query)
result = cursor.fetchall()
self.result_display.setPlainText(str(result))
if __name__ == '__main__':
app = QApplication(sys.argv)
window = DatabaseWindow()
window.show()
sys.exit(app.exec_())
在示例中,我们使用了MySQL数据库作为示例,需要根据实际情况修改连接数据库的参数。在实际开发中,可以根据需要使用不同的数据库模块来连接不同的数据库。