下面我将详细讲解“使用python将excel数据导入数据库过程详解”的完整实例教程,具体过程中我会提供两条示例来进行说明。
确定导入的Excel文件
首先,需要明确想要导入的Excel文件的具体路径以及名称。如果Excel文件在本地电脑中,需要指定文件的路径和文件名,可以使用Python中的openpyxl库来读取Excel文件。示例如下:
import openpyxl
# 打开指定路径的Excel文件
wb = openpyxl.load_workbook('example.xlsx')
# 获取Excel文件中的工作表
sheet = wb.active
创建数据库连接并设置游标
接下来需要创建与数据库连接,并设置游标。使用Python中的pymysql
库可以实现这个过程。示例如下:
import pymysql
# 创建数据库连接
db = pymysql.connect(
host='localhost',
user='root',
password='123456',
db='test',
charset='utf8mb4')
# 设置游标
cursor = db.cursor()
创建表并插入数据
接下来需要根据Excel文件的内容创建数据库表,并将Excel文件中的数据插入到刚才创建的表中。示例代码如下:
# 根据Excel数据创建数据库表
table_create = "CREATE TABLE IF NOT EXISTS students (name VARCHAR(255), age INT)"
cursor.execute(table_create)
# 将Excel文件中的数据插入到数据库表中
for row in sheet.rows:
name = row[0].value
age = row[1].value
sql = "INSERT INTO students (name, age) VALUES (%s, %s)"
cursor.execute(sql, (name, age))
提交并关闭连接
最后,提交之前的操作并关闭与数据库的连接。示例代码如下:
# 提交更改
db.commit()
# 关闭连接
cursor.close()
db.close()
以上就是一个将Excel文件导入数据库的完整实例教程。下面提供两条示例:
示例一:将一个Excel文件的内容导入到MySQL数据库中
假设有一个名为“example.xlsx”的Excel文件,其内容如下:
姓名 | 年龄 |
---|---|
Tom | 25 |
Jack | 27 |
下面是将该Excel文件的内容导入到名为“test”的MySQL数据库中的示例代码:
import openpyxl
import pymysql
# 打开指定路径的Excel文件
wb = openpyxl.load_workbook('example.xlsx')
# 获取Excel文件中的工作表
sheet = wb.active
# 创建数据库连接
db = pymysql.connect(
host='localhost',
user='root',
password='123456',
db='test',
charset='utf8mb4')
# 设置游标
cursor = db.cursor()
# 根据Excel数据创建数据库表
table_create = "CREATE TABLE IF NOT EXISTS students (name VARCHAR(255), age INT)"
cursor.execute(table_create)
# 将Excel文件中的数据插入到数据库表中
for row in sheet.rows:
name = row[0].value
age = row[1].value
sql = "INSERT INTO students (name, age) VALUES (%s, %s)"
cursor.execute(sql, (name, age))
# 提交更改
db.commit()
# 关闭连接
cursor.close()
db.close()
示例二:将多个Excel文件的内容导入到同一个MySQL数据库中
假设有两个Excel文件,分别为“example1.xlsx”和“example2.xlsx”,它们的内容如下:
example1.xlsx:
姓名 | 年龄 |
---|---|
Alice | 23 |
Bob | 26 |
Claire | 21 |
example2.xlsx:
姓名 | 年龄 |
---|---|
Dave | 29 |
Eva | 24 |
下面是将这两个Excel文件的内容导入到名为“test”的MySQL数据库中的示例代码:
import openpyxl
import pymysql
# 定义需要导入的Excel文件路径和文件名
excel_files = ['example1.xlsx', 'example2.xlsx']
# 创建数据库连接
db = pymysql.connect(
host='localhost',
user='root',
password='123456',
db='test',
charset='utf8mb4')
# 设置游标
cursor = db.cursor()
# 循环遍历每个Excel文件
for excel_file in excel_files:
# 打开Excel文件
wb = openpyxl.load_workbook(excel_file)
# 获取Excel文件中的工作表
sheet = wb.active
# 根据Excel数据创建数据库表
table_create = "CREATE TABLE IF NOT EXISTS students (name VARCHAR(255), age INT)"
cursor.execute(table_create)
# 将Excel文件中的数据插入到数据库表中
for row in sheet.rows:
name = row[0].value
age = row[1].value
sql = "INSERT INTO students (name, age) VALUES (%s, %s)"
cursor.execute(sql, (name, age))
# 提交更改
db.commit()
# 关闭连接
cursor.close()
db.close()
以上就是“使用python将excel数据导入数据库过程详解”的完整实例教程,通过以上示例代码的演示,读者可以快速学习到如何使用Python将Excel数据导入到数据库中,并应用到实际的工作和项目中。