以下是一个简单的Python代码示例,使用PyQt5创建一个GUI界面,并使用MySQL数据库进行增删改查操作:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QPushButton, QGridLayout, QMessageBox
import mysql.connector

class MyWidget(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 创建控件
        label1 = QLabel('ID:')
        self.input_id = QLineEdit()
        label2 = QLabel('Name:')
        self.input_name = QLineEdit()
        label3 = QLabel('Age:')
        self.input_age = QLineEdit()
        self.button_select = QPushButton('Select')
        self.button_insert = QPushButton('Insert')
        self.button_update = QPushButton('Update')
        self.button_delete = QPushButton('Delete')

        # 连接数据库
        self.conn = mysql.connector.connect(user='root', password='password', host='localhost', database='mydb')
        self.cursor = self.conn.cursor()

        # 设置布局
        grid = QGridLayout()
        grid.addWidget(label1, 0, 0)
        grid.addWidget(self.input_id, 0, 1)
        grid.addWidget(label2, 1, 0)
        grid.addWidget(self.input_name, 1, 1)
        grid.addWidget(label3, 2, 0)
        grid.addWidget(self.input_age, 2, 1)
        grid.addWidget(self.button_select, 3, 0)
        grid.addWidget(self.button_insert, 3, 1)
        grid.addWidget(self.button_update, 4, 0)
        grid.addWidget(self.button_delete, 4, 1)
        self.setLayout(grid)

        # 绑定事件
        self.button_select.clicked.connect(self.select_data)
        self.button_insert.clicked.connect(self.insert_data)
        self.button_update.clicked.connect(self.update_data)
        self.button_delete.clicked.connect(self.delete_data)

        # 显示界面
        self.setGeometry(300, 300, 300, 150)
        self.setWindowTitle('MySQL Demo')
        self.show()

    def select_data(self):
        # 查询数据
        id = self.input_id.text()
        if id == '':
            self.cursor.execute('SELECT * FROM mytable')
        else:
            self.cursor.execute('SELECT * FROM mytable WHERE id=%s', [id])
        result = self.cursor.fetchall()
        if len(result) > 0:
            self.input_name.setText(result[0][1])
            self.input_age.setText(str(result[0][2]))
        else:
            QMessageBox.warning(self, 'Warning', 'No data found!')

    def insert_data(self):
        # 插入数据
        name = self.input_name.text()
        age = self.input_age.text()
        if name == '' or age == '':
            QMessageBox.warning(self, 'Warning', 'Please input name and age!')
        else:
            self.cursor.execute('INSERT INTO mytable (name, age) VALUES (%s, %s)', [name, age])
            self.conn.commit()
            QMessageBox.information(self, 'Information', 'Data inserted successfully!')

    def update_data(self):
        # 更新数据
        id = self.input_id.text()
        name = self.input_name.text()
        age = self.input_age.text()
        if id == '' or name == '' or age == '':
            QMessageBox.warning(self, 'Warning', 'Please input id, name and age!')
        else:
            self.cursor.execute('UPDATE mytable SET name=%s, age=%s WHERE id=%s', [name, age, id])
            self.conn.commit()
            QMessageBox.information(self, 'Information', 'Data updated successfully!')

    def delete_data(self):
        # 删除数据
        id = self.input_id.text()
        if id == '':
            QMessageBox.warning(self, 'Warning', 'Please input id!')
        else:
            self.cursor.execute('DELETE FROM mytable WHERE id=%s', [id])
            self.conn.commit()
            QMessageBox.information(self, 'Information', 'Data deleted successfully!')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    widget = MyWidget()
    sys.exit(app.exec_())

该代码使用了PyQt5库创建了一个GUI界面,并使用了mysql.connector库连接MySQL数据库进行增删改查操作。在界面中,用户可以输入ID、姓名和年龄,并通过点击按钮实现查询、插入、更新和删除操作。在代码中,我们使用QMessageBox来显示操作结果和错误信息。注意,代码中的数据库连接信息需要根据实际情况进行修改

用pythonQT生成一个界面 可以将mysql里面的数据增删改查

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

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