我想将csv文件导入到表中。 CSV文件包含新行\N
。
复制时保存到我的数据库。因此,在通过
导入时需要将/n
替换为NULL
copy tbl_created_doc_no FROM '/Desktop/admin/document_no.csv' (FORMAT csv, HEADER, DELIMITER ';');
任何人都可以提出替换
的选项答案 0 :(得分:0)
https://www.postgresql.org/docs/current/static/sql-copy.html
NULL
指定表示空值的字符串。默认值为\ N. (反斜杠-N)文本格式,以及CSV中未加引号的空字符串 格式。对于案例,您甚至可能更喜欢文本格式的空字符串 您不希望将空值与空字符串区分开来。这个 使用二进制格式时不允许使用选项。
因此,如果您想要csv格式,请使用NULL '\N'
自己指定NULL,例如:
t=# select * from so78;
h | i
----------------------------------+---
2e346ec46b4ae31f54bf3ad3d90d3183 | 1
t=# copy so78 from stdin (delimiter ';', null '\N', format csv);
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself.
>> a;\N
>> \.
COPY 1
t=# select * from so78;
h | i
----------------------------------+---
2e346ec46b4ae31f54bf3ad3d90d3183 | 1
a |