使用Python连接MySQL,实现一个数据库管理系统(批发商零售商管理系统)

本文主要是介绍使用Python连接MySQL,实现一个数据库管理系统(批发商零售商管理系统),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用软件PyQt5实现图形界面
使用Python中的pymysql包实现连接数据库操作
本项目较小,适用于零基础Python初学者,不会的百度,很快就能理解本文思路
文末有参考资料,里边大概列举了做出此系统需要的材料

一、需求分析

1.1 背景
软件名称:批发商商品管理系统
用户:零售商、批发商
1.2 任务目标
1.提供零售商查找商品信息和批发商的功能
2.提供批发商对商品的折扣、下架、进货、出货、利润比设置
3.系统符合实际使用要求,人机交货界面友好,操作方便
1.3 运行环境
Python 3.8
Mysql 8.2
1.4 开发工具
Navicat
Pycharm
PyQt5

二、 关系模型

Wholesaler (Name, w_ID, Phone_Number, Maibox, Address)
Retailer(Name, r_ID, Phone_Number, Maibox, Address)
Commodity(Name,Category,Product_ID,Original_price,Selling_price,Discount, Stock)
Selling(w_ID, r_ID, Product_ID, Quantity)
TN(Name, Login, Password, Identity)

三、E-R图

实际中并未使用Selling关系
在这里插入图片描述

四、项目实现

4.1建立数据库
按关系模式写出数据库结构
在这里插入图片描述
4.2界面设计
4.2.1用户登录页面
在这里插入图片描述
4.2.2零售商查询信息页面
在这里插入图片描述
4.2.3批发商管理商品页面如下
在这里插入图片描述
4.2.4增货界面如下
在这里插入图片描述
4.2.5清点商品界面如下
在这里插入图片描述
4.2.4 设计思路
在本机python3.8导入pymysql包和pyqt5、pyqt5-tools后就可以开始编写了,思路是先不用图形界面,直接在pycharm上设计代码,之后用pyqt5进行界面设计; PyQt5 是用来创建Python GUI应用程序的工具包。作为一个跨平台的工具包,PyQt5可以在所有主流操作系统上运行,使用PyQt5的好处是可以先使用QtDesigner进行可视化设计,然后将生成的.ui文件转换成.py文件;代码编写及其简单。

五、实现功能的相应mysql语句+代码

5.1登录
在这里插入图片描述
在这里插入图片描述
5.2零售商查询信息
在这里插入图片描述
5.3批发商进行折扣
在这里插入图片描述
5.4批发商下架商品
在这里插入图片描述
5.5批发商增加商品(增货)
在这里插入图片描述
5.6批发商进货
在这里插入图片描述
5.6批发商出货
在这里插入图片描述
5.6批发商清点
在这里插入图片描述

六、代码设计综述

在这里插入图片描述
利用PyQt5完成界面的编写,生成py文件,然后通过添加事件监听来做出具体操作,
所有窗口的具体监听事件全部放到主函数中,具体代码可以看附件。

参考材料
Python连接mysql数据库
Windows环境安装PyQt5
PyQt5入门教程
百度

源代码已经更新到本人的GitHub仓库,还不会使用GitHub,等更新了删除线再去掉

这篇关于使用Python连接MySQL,实现一个数据库管理系统(批发商零售商管理系统)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/555087

相关文章

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

SQL注入漏洞扫描之sqlmap详解

《SQL注入漏洞扫描之sqlmap详解》SQLMap是一款自动执行SQL注入的审计工具,支持多种SQL注入技术,包括布尔型盲注、时间型盲注、报错型注入、联合查询注入和堆叠查询注入... 目录what支持类型how---less-1为例1.检测网站是否存在sql注入漏洞的注入点2.列举可用数据库3.列举数据库

Linux alias的三种使用场景方式

《Linuxalias的三种使用场景方式》文章介绍了Linux中`alias`命令的三种使用场景:临时别名、用户级别别名和系统级别别名,临时别名仅在当前终端有效,用户级别别名在当前用户下所有终端有效... 目录linux alias三种使用场景一次性适用于当前用户全局生效,所有用户都可调用删除总结Linux

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

java图像识别工具类(ImageRecognitionUtils)使用实例详解

《java图像识别工具类(ImageRecognitionUtils)使用实例详解》:本文主要介绍如何在Java中使用OpenCV进行图像识别,包括图像加载、预处理、分类、人脸检测和特征提取等步骤... 目录前言1. 图像识别的背景与作用2. 设计目标3. 项目依赖4. 设计与实现 ImageRecogni

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

数据库oracle用户密码过期查询及解决方案

《数据库oracle用户密码过期查询及解决方案》:本文主要介绍如何处理ORACLE数据库用户密码过期和修改密码期限的问题,包括创建用户、赋予权限、修改密码、解锁用户和设置密码期限,文中通过代码介绍... 目录前言一、创建用户、赋予权限、修改密码、解锁用户和设置期限二、查询用户密码期限和过期后的修改1.查询用

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处