You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

含多行文本、引号及逗号的CSV文件上传MySQL失败求助

MySQL CSV上传含特殊格式文本的解决方法

1. 修正CSV文件的引号转义规则

CSV规范里,字段内的双引号必须用两个双引号转义,你当前的行里"awsome"应该改成""awsome"",修正后该行内容应为:

12345,SomeCoolName,"this is my ""awsome"" comment.
some more text, and dome more.
and some ""more""

2. 配置LOAD DATA命令的正确参数

用LOAD DATA命令上传时,必须明确指定字段分隔符、包围符和转义符,适配你的CSV格式。示例命令如下:

LOAD DATA LOCAL INFILE '/path/to/your/file.csv'
INTO TABLE your_table_name
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '"'
LINES TERMINATED BY '\n' -- Windows系统换成'\r\n'
(review_id, user, text);
  • ENCLOSED BY '"':告诉MySQL字段被双引号包围
  • ESCAPED BY '"':指定用双引号转义字段内的双引号
  • LINES TERMINATED BY:根据你的操作系统换行符调整,避免多行文本被误判为新行

3. 使用MySQL Workbench图形化上传(适合非命令行用户)

  1. 打开Workbench,连接到目标数据库,右键目标表选择Table Data Import Wizard
  2. 选择你的CSV文件,进入字段映射步骤
  3. 在Advanced Options里设置:
    • Field Separator: ,
    • Enclosed By: "
    • Escape Character: "
    • 勾选Allow fields to contain line breaks
  4. 完成后续步骤即可正确导入

4. 批量预处理CSV文件(适合大量数据)

如果有大量需要修正的行,可以用简单脚本批量处理,比如Python示例:

import csv

input_path = "input.csv"
output_path = "fixed.csv"

with open(input_path, 'r', newline='', encoding='utf-8') as infile, \
     open(output_path, 'w', newline='', encoding='utf-8') as outfile:
    reader = csv.reader(infile, quotechar='"', doublequote=True, skipinitialspace=True)
    writer = csv.writer(outfile, quotechar='"', doublequote=True, quoting=csv.QUOTE_ALL)
    for row in reader:
        writer.writerow(row)

这个脚本会自动处理字段内的双引号转义和多行文本,生成符合规范的CSV文件。

内容的提问来源于stack exchange,提问作者james2471993

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 14:32:21