如何在psql \ COPY导入的数据文件中转义一个doulbe引用?

时间:2018-07-11 21:38:51

标签: postgresql psql

制表符分隔的文本文件中有很多独立的双引号'“',需要使用psql \ copy命令将其加载到PostgreSQL中。

如果我使用FORMAT CSV选项,则必须指定QUOTE,并且QUOTE字符需要配对。

这是代码和输出,

create table t1(
  c1 varchar(20),
  n1 numeric
);

echo 'Alf_7"    5.12' > m.csv

psql> \copy t1 FROM 'm.csv' (FORMAT CSV, delimiter E'\t', NULL 'NULL', HEADER false);
ERROR:  unterminated CSV quoted field
CONTEXT:  COPY t1, line 1: "Alfa_7" 5.1

1 个答案:

答案 0 :(得分:0)

使用FORMAT text选项。则不必指定QUOTE。

psql=> \copy t1 FROM 'm.csv' (FORMAT text, delimiter E'\t', NULL 'NULL', HEADER false);

COPY 1