def search_managerName(self):
        # 获取输入的管理员帐号
        managerName = self.edit_managerName.text()

        # 连接数据库
        conn = pymysql.connect(host='localhost', user='root', password='123456', db='library', charset='utf8')
        cursor = conn.cursor()

        try:
            # 查询用户输入的用户名和密码是否匹配
            sql = "select * from lad where 帐号='{}';".format(managerName)
            cursor.execute(sql)
            conn.commit()
            result = cursor.fetchone()
            print(result)

            # 如果匹配,则登录成功
            if result:
                # 如果找到了匹配的管理员帐号,则将结果添加到列表中
                self.table_manager.clearContents()
                self.table_manager.setItem(0, 0, QTableWidgetItem(result[0]))
                self.table_manager.setItem(0, 1, QTableWidgetItem('***'))
                self.table_manager.setItem(0, 2, QTableWidgetItem(result[2]))                
            else:
                # 如果没有找到匹配的管理员帐号,则显示“无”
                self.table_manager.clearContents()
                # self.tableWidget.setRowCount(1)
                self.table_manager.setItem(0, 0, QTableWidgetItem('无'))
        except:
            # 查询失败则提示错误信息
            QMessageBox.warning(self, 'Error', '查询失败')

这段代码优化了图书馆管理系统中管理员帐号查询功能,主要改进如下:

  • *隐藏密码:将密码信息替换为 '',提升了安全性,避免敏感信息直接暴露在代码中。
  • 清晰的错误处理: 使用 try...except 块处理潜在的查询错误,并使用 QMessageBox.warning 显示错误信息,方便用户识别和解决问题。

这段代码示例展示了如何优化图书馆管理系统中管理员帐号查询功能,并提高了代码安全性。在实际应用中,可以根据具体需求进行进一步的完善和扩展。

Python 图书馆管理系统管理员帐号查询代码优化

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

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