2017-06-06 50 views
0

我想導入CSV文件到一個表。 CSV文件包含新線\N導入CSV文件需要更換/ n,其中空

在複製其保存到我的數據庫。因此,需要更換/n爲NULL通過

copy tbl_created_doc_no FROM '/Desktop/admin/document_no.csv' (FORMAT csv, HEADER, DELIMITER ';'); 

進口,而任何人都可以提出一個選項,更換

回答

0

https://www.postgresql.org/docs/current/static/sql-copy.html

NULL

指定代表NULL值的字符串。缺省值是\ n (反斜槓-N)中的文本格式,並以CSV格式 非引用空字符串。你甚至可以在案件 文本格式喜歡一個空字符串,你不想從空字符串區分空值。使用二進制格式時,此選項 不允許。

所以,如果youwant csv格式,自行指定NULL與NULL '\N',例如:

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        |