PostgreSQL COPY csv包括行情

时间:2015-02-20 12:52:57

标签: postgresql csv import copy

这是一个非常简单的问题,我正在使用psql终端命令COPY,如下所示

COPY tbname FROM '/tmp/file.csv'
delimiter '|' csv;

但是这个file.csv包含诸如

之类的数据
random|stuff|32"

以及

random|other "stuff"|15

我试图使用双引号来逃避报价,因为Postgres网站建议

random|stuff|32""
random|other ""stuff""|15

这似乎完全删除了我不想要的引号。 有没有办法让导入只是将这些引号视为常规字符,以便它们像在csv文件中那样出现在数据库中?

1 个答案:

答案 0 :(得分:4)

根据documentation,默认引号符号为",因此您需要提供具有不同符号的QUOTE参数。引号必须是单个单字节字符。

COPY tbname FROM '/tmp/file.csv'
delimiter '|' QUOTE '}' csv; -- use a symbol you know does not appear in your file.