利用Python将Excel表中的数据导入Mysql数据库

 python操作Excel 需要导入xlrd包,可以通过pip install xlrd 一键安装。


#coding=utf-8
'''
python 将指定目录下的excel文件导入到数据库中
'''
# 引入数据库包
import pymysql
# 引入操作excel包
import xlrd
from datetime import date, datetime

# 读取excel中内容到数据库
# 从本地读取excel文件
workbook = xlrd.open_workbook('E:/upload/car.xlsx')
# 获取Excel文件的第一个模块
sheet = workbook.sheet_by_index(0)
data_list = []
row_list = []
nRows = sheet.nrows  # 行数
nCols = sheet.ncols  # 列数

for i in range(1, nRows):
    row_list = []
    for j in range(nCols):
        # 获取第i行,第j列的值
        data_value = sheet.cell(i, j).value
        # 获取第i行,第j列的类型
        # ctype :  0 empty, 1 string ,2 number, 3 date, 4 boolean 5,error
        data_type = sheet.cell(i, j).ctype
        if data_type == 2:
            # 将字符串转为number
            data_value = str(int(data_value))
        if data_type == 3:
            
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用Python中的pandas和MySQLdb库来导入Excel文件中的数据MySQL数据库中。以下是实现的步骤: 1. 安装pandas和MySQLdb库 ```python !pip install pandas !pip install mysqlclient ``` 2. 导入Excel文件到pandas DataFrame中 ```python import pandas as pd df = pd.read_excel('data.xlsx') ``` 3. 连接MySQL数据库 ```python import MySQLdb conn = MySQLdb.connect(host="localhost", user="root", password="password", db="database_name") ``` 4. 创建游标对象并执行SQL语句 ```python cur = conn.cursor() # 创建表格 cur.execute("CREATE TABLE table_name (column1_type column1_name, column2_type column2_name, ...);") # 写入数据 for index, row in df.iterrows(): cur.execute("INSERT INTO table_name (column1_name, column2_name, ...) VALUES (%s, %s, ...)", tuple(row)) ``` 5. 提交更改并关闭连接 ```python conn.commit() cur.close() conn.close() ``` 完整代码: ```python import pandas as pd import MySQLdb # 导入Excel文件到pandas DataFrame中 df = pd.read_excel('data.xlsx') # 连接MySQL数据库 conn = MySQLdb.connect(host="localhost", user="root", password="password", db="database_name") # 创建游标对象并执行SQL语句 cur = conn.cursor() # 创建表格 cur.execute("CREATE TABLE table_name (column1_type column1_name, column2_type column2_name, ...);") # 写入数据 for index, row in df.iterrows(): cur.execute("INSERT INTO table_name (column1_name, column2_name, ...) VALUES (%s, %s, ...)", tuple(row)) # 提交更改并关闭连接 conn.commit() cur.close() conn.close() ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值