批量CSV导入MySQL数据库是一个经常使用的操作,本文将介绍如何使用Python脚本实现。
import csv
import mysql.connector
# 打开CSV文件
with open('data.csv', 'r') as file:
# 读取CSV文件中的数据
reader = csv.reader(file)
# 连接MySQL数据库
cnx = mysql.connector.connect(user='root', password='123456', host='localhost', database='test')
# 获取游标
cursor = cnx.cursor()
# 批量插入数据
for row in reader:
cursor.execute('INSERT INTO mytable (col1, col2, col3) VALUES (%s, %s, %s)', row)
# 提交事务
cnx.commit()
# 关闭游标和数据库连接
cursor.close()
cnx.close()
以上代码使用Python的csv库读取CSV文件中的数据,并通过MySQL Connector连接MySQL数据库。然后,使用游标批量插入数据,并提交事务。在执行插入操作时,需要将CSV文件中的每一行数据作为一个元组传递给执行命令的参数。由于数据量比较大,使用批量插入可以大幅提高插入速度。
需要注意的是,在执行插入操作之前,需要将数据库表已经创建好,并设置好对应的字段。另外,在连接数据库的时候,需要使用正确的用户名、密码、主机和数据库名。