MySQL“Load Data INFILE”和缺少双引号?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (124)

我试图使用LoadDataINFILE技术将CSV加载到MySQL中。它运行良好,但我遇到了一个问题,一些列使用双引号,而有些则没有。

例子:

something,123,something,"Bauer, Jack",123,something

所发生的事情是引号中的逗号破坏了导入,所以我的数据在末尾都会加起来。不确定如何使导入在双引号中转义逗号。

mysql --user=<USER> --password=<PASS> -e "LOAD DATA INFILE '<FILENAME>' INTO TABLE <TABLENAME> FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' (col1, col2, col3, ...)" <DATABASE>
提问于
用户回答回答于

您需要使用附加选项执行语句LoadDataINFILE

FIELDS OPTIONALLY ENCLOSED BY '"'

因此整个陈述变成

    LOAD DATA INFILE '<FILENAME>' INTO TABLE <TABLENAME>
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
(col1, col2, col3, ...)
用户回答回答于

扫码关注云+社区

领取腾讯云代金券