使用Python将Excel中的数据导入到MySQL

本文介绍了如何使用Python的sqlalchemy和pymysql模块将Excel数据导入到MySQL数据库中。通过示例代码展示了两种方法,包括直接导入和通过自定义函数实现。在处理过程中,还提到了解决pymysql连接断开问题的方法,如在try-except结构中加入自动重连机制。
摘要由CSDN通过智能技术生成

使用python将Excel中的数据导入到Mysql中

1.使用sqlalchemy模块,直接将整个Excel表格导入到Mysql中,简单粗暴,代码如下:

from sqlalchemy import create_engine
#将Excel表格中的数据放到MySQL中
path = r'G:\数据集\记录信息(10月).xls'
data=pd.read_excel(path)

#这里是对data.columns进行处理
list = data.columns
new_list = []
for x in list:
    new_list.append(''.join(x.split()))
data.columns=new_list

# create_engine就是去建立连接,相当于我们pymsql建立连接的时候 conn= pymysql.connect(...)
# conn = create_engine(
#     "mysql+pymysql://root:123abc@localhost:3306/数据库名?charset=utf8mb4",
#     max_overflow=0,   # 超过连接池大小外最多创建的连接数
#     pool_size=5,      # 连接池大小
#     pool_timeout=30,  # 连接池中没有线程最多等待时间,否则报错
#     pool_recycle=-1,  # 多久之后对连接池中的连接进行回收(重置)-1不回收
# )

engine = create_engine('mysql+pymysql://root:root@localhost:3306/database?charset=utf8')
#if_exists三个模式:fail,若表存在,则不输出;replace:若表存在,覆盖原来表里的数据;append:若表存在,将数据写到原表的后面。默认为fail
sql_chengfen = data.to_sql(name='jilvinform_10', con=engine, index=False,if_exists='replace')

2.第二种方法是利用pymysql模块,代码如下,其中函数ExcelToMysql是导入,函数readTable(cursor)是导出展示。

import pymysql
import pandas as pd
from openpyxl.reader.excel import load_workbook
import xlrd

path = r'E:\desktop\数据.xlsx'

def ExcelToMysql(cur, path):
    num = 1
    # 读取excel文件
    workbook = load_workbook(path)
    # 获得所有工作表的名字
    sheets = workbook.get_sheet_names()
    # 获得第一张表
    worksheet = workbook.get_sheet_by_name(sheets
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值