0

我正在使用LOAD DATA INFILE将二十个 | 分隔的 .dat 文件导入 MySQL 表。但有些| 字段终止符用反斜杠转义。下面的第二个字段是一个示例:

1001604|EMERITUS CORP\WA\|SC 13G|1996-02-13|edgar/data/1001604/0000728757-96-000006.txt
1001604|EMERITUS CORP\WA\|SC 13G|1996-02-14|edgar/data/1001604/0000903949-96-000038.txt

DATE我收到一个错误,因为最后一个字段与为倒数第二个字段声明的类型冲突。我可以打开 .dat 文件并逃脱转义,但有更好的方法吗?

我可以使用流编辑器将所有反斜杠加倍,但这似乎是个坏主意。我可以安全地将选项更改为FIELDS ESCAPED BY“\”以外的选项,还是这是个坏主意?谢谢!

这是我的LOAD DATA INFILE命令:

LOAD DATA INFILE 'C:/users/richard/research/data/edgar/masterfiles/master_1996.dat'
    INTO TABLE edgar.master
    FIELDS TERMINATED BY '|'
    IGNORE 1 LINES;
4

1 回答 1

4

添加ESCAPED BY ''到我的FIELDS子句允许查询完成而不会出错。如果我发现这导致静默失败,我会更新。

于 2012-09-12T19:08:53.540 回答