如何将CSV文件高效导入MySQL数据库
将CSV文件导入MySQL数据库,可以通过使用MySQL命令行工具(LOAD DATA INFILE语句)、图形化管理工具(如phpMyAdmin、MySQL Workbench)或编写脚本(如Python) 这三种核心方法来实现。

LOAD DATA INFILE是MySQL官方推荐的高性能方法,尤其适合处理大型CSV文件,其基本语法如下:
LOAD DATA INFILE '文件路径/your_data.csv' INTO TABLE 目标表名 FIELDS TERMINATED BY ',' -- 指定字段分隔符,CSV通常为逗号 ENCLOSED BY '"' -- 指定文本限定符,通常为双引号 LINES TERMINATED BY '\n' -- 指定行终止符 IGNORE 1 ROWS; -- 如果CSV有标题行,则忽略首行
使用此命令前,请确保CSV文件位于MySQL服务器可访问的路径,并注意文件字符集与数据库的匹配。
对于不熟悉命令行的用户,图形化工具是更直观的选择,以MySQL Workbench为例,只需右键点击目标表,选择“Table Data Import Wizard”,然后按照向导选择CSV文件并匹配字段即可完成导入,过程简单且能自动处理编码问题。
在需要自动化或复杂数据处理的场景下,通过Python(pandas库+SQLAlchemy)等编程脚本导入则最为灵活,示例代码如下:
import pandas as pd
from sqlalchemy import create_engine
# 读取CSV文件
df = pd.read_csv('your_data.csv')
# 创建数据库连接
engine = create_engine('mysql+pymysql://用户名:密码@主机:端口/数据库名')
# 导入到MySQL,'your_table'为表名,if_exists参数可指定替换或追加模式
df.to_sql('your_table', con=engine, index=False, if_exists='replace')
无论选择哪种方法,在导入前都务必确保CSV文件的列结构与MySQL目标表字段定义一致,并提前处理数据中的特殊字符、空值和编码问题,这是成功导入的关键,对于大规模数据,建议先在小样本上测试,确认无误后再进行完整操作。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/5767.html发布于:2026-07-20





