一、环境配置
系统:win10,64位,ltsc2019
工具:pycharm 2018.03.04
语言:python 3.5.4
二、使用的库函数
PyQt5 pip install pyqt5
pymysql pip install pymysql
xlrd pip install xlrd
三、QT Designer设计界面
![ba2515911d93d632c17fd958f036b68e.png](https://img-blog.csdnimg.cn/img_convert/ba2515911d93d632c17fd958f036b68e.png)
![beb3cfdff4a51030687100ce60157c7b.png](https://img-blog.csdnimg.cn/img_convert/beb3cfdff4a51030687100ce60157c7b.png)
具体配置见UI文件。
设计完成后,使用pyUIC将UI文件转换为python代码。
可以使用pycharm调用外部工具:
pyuic.exe的目录在python的安装目录下,working directory:内容填写$FileDir$
![84135afc2dd0953e482359cfd453fbba.png](https://img-blog.csdnimg.cn/img_convert/84135afc2dd0953e482359cfd453fbba.png)
然后使用该工具进行转换
![8895f13e2bec30d3879389356f447e4d.png](https://img-blog.csdnimg.cn/img_convert/8895f13e2bec30d3879389356f447e4d.png)
转换完成后,工程目录下会有一个project.py,名称同UI文件。
四、代码编写
导入库函数,和定义一个类及一些变量
![9763202cb6bc6488e868ad2f2fd881f1.png](https://img-blog.csdnimg.cn/img_convert/9763202cb6bc6488e868ad2f2fd881f1.png)
初始化界面按钮,默认为false,绑定按钮到对应的函数
![7d3fc23ad06350ab8ee61700360976e5.png](https://img-blog.csdnimg.cn/img_convert/7d3fc23ad06350ab8ee61700360976e5.png)
连接数据库函数
![ddf70e545b9fa7baa0940ad838b0beb8.png](https://img-blog.csdnimg.cn/img_convert/ddf70e545b9fa7baa0940ad838b0beb8.png)
断开连接函数
![b3cf02b6367aef590d98b0790e9bc3aa.png](https://img-blog.csdnimg.cn/img_convert/b3cf02b6367aef590d98b0790e9bc3aa.png)
打开文件函数
![11df0937794ed9e32dfbe2d573f8b867.png](https://img-blog.csdnimg.cn/img_convert/11df0937794ed9e32dfbe2d573f8b867.png)
设置选中sheet名字后,导入按钮才可用
![7bfb5c68b615e6ae90263d9fa7bf7cfb.png](https://img-blog.csdnimg.cn/img_convert/7bfb5c68b615e6ae90263d9fa7bf7cfb.png)
写入数据库,获取表名,将sheetname作为数据库中的表名
![c5ca5f57b26a70a8764e729ffa7ce305.png](https://img-blog.csdnimg.cn/img_convert/c5ca5f57b26a70a8764e729ffa7ce305.png)
整理建表SQL语句,默认为Excel中的第一行为字段,如果表不存在的情况。
![b8c1b6e3e87a1ae447165526d4893926.png](https://img-blog.csdnimg.cn/img_convert/b8c1b6e3e87a1ae447165526d4893926.png)
整理插入SQL语句。
![ac8052d9d0f35b563572826d3146477e.png](https://img-blog.csdnimg.cn/img_convert/ac8052d9d0f35b563572826d3146477e.png)
写入数据库并计算插入时间
![54fac7e9838c6eb84cb477f09a0bb3dd.png](https://img-blog.csdnimg.cn/img_convert/54fac7e9838c6eb84cb477f09a0bb3dd.png)
处理关闭按钮事件,点击关闭时断开数据库连接
![b2cfbcc26e320d7496c360941df010b0.png](https://img-blog.csdnimg.cn/img_convert/b2cfbcc26e320d7496c360941df010b0.png)
主函数
![610633b41db61a77b385b328d3af805a.png](https://img-blog.csdnimg.cn/img_convert/610633b41db61a77b385b328d3af805a.png)
五、运行结果
界面比较LOW,请忽略
![6aa2de5cd67b2666b1c2939eba7c2f11.png](https://img-blog.csdnimg.cn/img_convert/6aa2de5cd67b2666b1c2939eba7c2f11.png)
插入10000多条数据的时间,2秒多。
![47307c5599d9da2e722439478c0b1e3f.png](https://img-blog.csdnimg.cn/img_convert/47307c5599d9da2e722439478c0b1e3f.png)