如何加载 `\data\^Ihello$` 作为两列?

How to load `\data\^Ihello$` as two columns?

下面是我的test-tab.csv

\data\  hello

注意:test-tab.csv中的\h之间有一个\t,即显示在vim(set list)中.

\data\^Ihello$

准备加载数据。

create table tab(`f1` varchar(10),`f2` varchar(10));

将数据加载到 table tab.

LOAD DATA LOCAL INFILE  "f:/test-tab.csv"
INTO TABLE  tab
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\r\n'  \W;

看看。

select * from tab;
+------------+------+
| f1         | f2   |
+------------+------+
| data  hello| NULL |
+------------+------+
1 row in set (0.000 sec)

如何将数据加载到 table tab 中,如下所示。

select * from tab;
+------------+------+
| f1         | f2   |
+------------+------+
| \data\     | hello|
+------------+------+
1 row in set (0.000 sec)

约束条件:保持test-tab.csv中的数据格式不变。

问题似乎是转义标签。

FIELDS TERMINATED BY '\t' ESCAPED BY ''

如果不行,数据中是否有一些字符没有使用?说 |?那么

FIELDS TERMINATED BY '\t' ESCAPED BY '|'
LOAD DATA LOCAL INFILE  "f:/test-tab.csv"
INTO TABLE  tab
FIELDS TERMINATED BY '\t'   ESCAPED BY ''
LINES TERMINATED BY '\n'  \W;

1.add ESCAPED BY ''
2.LINES TERMINATED BY '\n'
csv 文件是在 linux 中创建的,我将其加载到我的 win-os.