在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數據庫作為示例,需要根據實際情況修改連接數據庫的參數。在實際開發中,可以根據需要使用不同的數據庫模塊來連接不同的數據庫。