Python将Excel文件插入Mysql数据库(脚本)

news2024/11/27 4:21:51

目录

      • 前言
        • 最近接到一个需求,就是将多个Eccel文件(表头相同;每个都非常大,约60多万行,每个都是!!)先合并在一起,再做一些处理,但是Excel表格一个文件根本存不下这么多!更别提打开再做处理,怎么办?当然是借助Mysql啦,利用Python脚本将每一个文件内容插入进去,(其实也可以单个依次导入,但是有多个Excel文件,这样比较繁琐。更重要的是我会Python直接写个脚本)
      • 图片展示
      • 1、先创建数据库
      • 2、目录结构展示
      • 3、奉上所有代码和注释
      • 4、注意事项
        • 4-1
    • 数据库端口号我的是33061,一般来说是 3306
        • 4-2
    • 切记,有多少个(列)表头,就有多少个 %s 占位符
      • 希望对大家有帮助
      • 致力于办公自动化的小小程序员一枚
      • 致力于写出清楚的博客
      • 都看到这了,关注+点赞+收藏=不迷路!!

前言

最近接到一个需求,就是将多个Eccel文件(表头相同;每个都非常大,约60多万行,每个都是!!)先合并在一起,再做一些处理,但是Excel表格一个文件根本存不下这么多!更别提打开再做处理,怎么办?当然是借助Mysql啦,利用Python脚本将每一个文件内容插入进去,(其实也可以单个依次导入,但是有多个Excel文件,这样比较繁琐。更重要的是我会Python直接写个脚本)

图片展示

在这里插入图片描述

  											 **↓**

在这里插入图片描述

1、先创建数据库

在这里插入图片描述

2、目录结构展示

文件夹:数据源:用来存放Excel文件

在这里插入图片描述

3、奉上所有代码和注释

import os
import time
import pandas as pd
import pymysql

t1 = time.time()
# 连接mysql
connect = pymysql.connect(host='localhost',   # 本地数据库
                          user='root',# 用户名
                          password=自己的数据库连接密码, # 数据库密码
                          db=自己的数据库名称, # 数据库名称
                          port=3306, # 数据库端口号
                          charset='utf8') #服务器名,账户,密码,数据库名称
cur = connect.cursor()

sql2 = 'truncate table 插入测试表;' # 每次插入前先清空表
cur.execute(sql2)
#
for f in os.listdir("./数据源/"):# 读取
    f_n = "./数据源/"+f
    df = pd.read_excel(f_n,sheet_name=0,keep_default_na="",dtype=str)
    data = df.values.tolist()
    for i in data:
        # print(i)
        sql = 'insert into 插入测试表 values (%s,%s,%s,%s);'# 切记,有多少个(列)表头,就有多少个 %s 占位符
        cur.execute(sql,tuple(i))
    print(f,"插入成功")
connect.commit()
print("ok")

# 关闭数据库
cur.close()  # 关闭游标
connect.close()  # 关闭数据库连接

t2 = time.time()
print("数据插入结束,用时%.2f秒"%(t2-t1))

4、注意事项

4-1

数据库端口号我的是33061,一般来说是 3306

在这里插入图片描述

4-2

切记,有多少个(列)表头,就有多少个 %s 占位符

在这里插入图片描述

希望对大家有帮助

致力于办公自动化的小小程序员一枚

致力于写出清楚的博客

都看到这了,关注+点赞+收藏=不迷路!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/49964.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python矩阵乘法 二重循环实现 + 列表推式

这是python 矩阵乘法的简单例子 col 2 row 2 a [[1, 2], [3, 4]] b [[5, 6], [7, 8]] c [[0, 0], [0, 0]] “”" a b c 二维矩阵初始化 c [[0 for col in range(col)] for row in range(row)] a [[0 for col in range(col)] for row in range(row)] b [[0 for c…

Android热修复,精简学习

接入热修复 接入热修复流程如下: 配置开发环境在控制台创建应用在客户端创建新工程签名配置加密信息编写代码发布带有热修复功能的客户端版本 配置开发环境 在控制台创建应用 在控制台创建 mPaaS 应用。此时,本地还没有带签名的 APK,因此…

面试:插件化相关---broadcastReceiver

实现原理 1 采用的模型 Android中的广播使用了设计模式中的观察者模式:基于消息的发布 / 订阅事件模型因此,Android将广播的发送者 和 接收者 解耦,使得系统方便集成,更易扩展 2 模型讲解 模型中有3个角色: 消息订阅…

小程序项目结构

pages 用来存放所有小程序的页面utils 用来存放工具性质的模块(例如:格式化时间的自定义模块)app.js 小程序项目的入口文件app.json 小程序项目的全局配置文件app.wxss 小程序项目的全局样式文件project.config.json 项目的配置文件sitemap.json 用来配置小程序及其页面是否允许…

【数据结构-查找】散列表

文章目录1 线性探测法1.1 查找成功时的 ASL1.2 查找失败时的 ASL1.3 散列表的装填因子 α2 拉链法1 线性探测法 1.1 查找成功时的 ASL 查找元素 47(散列函数:3)次数:1查找元素 7(散列函数:11)次…

云上办公便捷、安全,就用华为云桌面

云上办公便捷、安全,就用华为云桌面! 根据IDC提出的“未来工作空间”的概念,未来工作空间意味着将打破时空与地域的限制,让员工随时随地工作。未来工作空间也将成为企业整体数字化转型战略中的必要组成部分。 恰逢其时&#xff0…

kubernetes Pod详解

文章目录Pod生命周期创建和终止pod的创建过程pod的终止过程初始化容器钩子函数容器探测重启策略Pod调度定向调度NodeNameNodeSelector亲和性调度NodeAffinityPodAffinityPodAntiAffinity污点和容忍污点(Taints)容忍(Toleration)Po…

【测试沉思录】19. 如何设置 JMeter 线程组?

作者:宋赟 编辑:毕小烦 最近有不少测试同学问我 JMeter 线程组如何设置并发的问题,发现很多人对线程组里的参数不是很清楚,今天就科普一下 JMeter 线程组的信息,也简单介绍一下不同场景的并发策略。 1. 线程组是什么 …

制作一个简单HTML游戏网页(HTML+CSS)米哈游 1页 带轮播图

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材,DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 游戏官网 | 游戏网站 | 电竞游戏 | 游戏介绍 | 等网站的设计与制作 | HTML期末大学生网页设计作业,Web大学生网页 HTML:结构 …

K3S +Helm+NFS最小化测试安装部署只需十分钟

作者:郝建伟 k3s 简介 官方文档:k3s 什么是k3s k3s 是一个轻量级的 Kubernetes 发行版 它针对边缘计算、物联网等场景进行了高度优化。 k3s 有以下增强功能:打包为单个二进制文件。 使用基于 sqlite3 的轻量级存储后端作为默认存储机制。…

【附源码】计算机毕业设计JAVA专利查询与发布系统设计与实现

【附源码】计算机毕业设计JAVA专利查询与发布系统设计与实现 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&#xff1…

BI数据分析

一 前言 数据分析一般需要掌握Excel、SQL,再强大的需要掌握python等。目前市面上的数据BI工具,就是用来优化复杂的数据分析过程,解放相关人员的生产力的,不再为了一个需求而漫长等待和重复多次沟通,从而让人员可以更多…

Echarts柱状图label优化历程

问题1 由于项目数据记录多或者数据值大的时候,会出现label重叠的现象,如下图。 解决方案 针对上述问题,解决思路如下: 1、求Y轴的最大值(我们用Y轴的最大值,去计算每个柱子在整个图中的占比)…

分布式文件系统

0.0 分布式文件系统 一般做法: 传统的模式是我们通过tomcat或者nginx,存放静态资源文件。 存在的问题: 单个节点会出现存不下的情况,需要多个节点。 分布式文件系统 需要一个系统来管理多个计算机节点上的文件数据&#xff…

[附源码]计算机毕业设计JAVA小锅米线点餐管理系统

[附源码]计算机毕业设计JAVA小锅米线点餐管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM my…

Python Faker库造伪数据

pip install Faker -i https://pypi.tuna.tsinghua.edu.cn/simple 在生成数据时,先调用unique,上面例子中的代码则改成下面这样 from faker import Faker def faker_demo(n): f Faker(“zh-CN”) l [] for i in range(n): # 代码更改处,…

安全高效应对混合办公新趋势 腾讯四大协同办公产品亮相

11月30日下午,2022腾讯全球数字生态大会「安全高效协同办公」专场在线上召开。论坛针对混合办公变革下的安全风险进行解析,并给出便捷规范的评估工具协助各行业客户评估自身办公安全成熟度,详细解读了腾讯数据安全解决方案、腾讯零信任iOA、腾…

Docker快速入门【极速浏览版】

文章目录11.1 Docker为什么出现1.2 Docker理念1.3 容器和虚拟机比较⭐️1.4 容器为什么比虚拟机快?⭐️1.5 Docker的基本组成⭐️1.6 Docker一个基本流程⭐️1.7 Docker架构⭐️1.7.1 入门版1.7.2 架构板22.1 Centos Docker安装2.2 前提条件2.3 官网安装doc2.4 查看…

安科瑞集中监控,剩余电流监测,温度保护电气火灾监控探测器

安科瑞 王晶淼/司红霞 一、电气火灾和爆炸的原因 电气火灾和爆炸在火灾、爆炸事故中占有很大的比例。如线路、电动机、开关等电气设备都可能引起火灾。变压器等带油电气设备除了可能发生火灾,还有爆炸的危险。造成电气火灾与爆炸的原因很多。除设备缺陷、安装不当等设计和施工…

人工智能-机器学习-深度学习-概述

文章目录一:人工智能需要的基础和涉及内容二:数学基础(1)线性代数(2)概率论(3)数理统计(4)最优化方法(5)信息论三:机器学习…