PyQt5 通过文本框等组件动态实现数据库查询
My Environment
- Python 3.x
- Pyqt5
- Qt designer
- PyUIC
- MySQL
- pymysql
实现效果
通过在界面文本框等组件输入相关信息,点击按钮通过pysql完成数据库语句拼接实现数据库动态查询相关操作,查询后可通过表格组件展示。
实现过程
1.在界面中设计好文本框、按钮等组件
2.利用pymysql实现查询及创建点击函数
self.button_test.clicked.connect(self.button_test_clicked) # 点击查询功能
def button_test_clicked(self):
# 打开数据库连接(IP地址/数据库用户名/登录密码/数据库模式名/编码方式/端口号)
database = pymysql.connect(host='localhost', user='root',
password='123456', db="angleStatemonitor", charset='utf8', port=3306)
cur = database.cursor()
# 单日记录查询
if self.lineEdit_find.text() == self.lineEdit_find.text() and self.lineEdit_find.text() is not "":
sql_select = "select * from OperationRecord where time like '" + str(self.lineEdit_find.text()) + "'"
cur.execute(sql_select)
else:
# 提示信息
self.box = QMessageBox(QMessageBox.Warning, "提示信息", "查询失败!")
qyes = self.box.addButton(self.tr("确定"), QMessageBox.YesRole)
# qno = self.box.addButton(self.tr("否"), QMessageBox.NoRole)
self.box.exec_()
其他python数据库语句请参考链接: MySQL数据库范围、模糊、时间范围(时间段)查询语句.
END