2012-05-30 1 views
7

Ho un CSV che contiene varie colonne. Una delle colonne contiene dati interi. Tuttavia, quando si esegue una copia a:Postgres COPIA A numeri interi NULL

COPY soc 
FROM '~/soc.asc' 
WITH DELIMITER '$'; 

sto ottenendo il seguente:

ERROR: invalid input syntax for integer: "" 
CONTEXT: COPY soc, line 1, column soc_code: "" 

poiché sembra che Postgres sta cercando di attaccare una stringa vuota in un numero intero. Come posso risolvere questo? Non voglio davvero fondere il mio schema per adattarlo all'importazione se può essere aiutato.

risposta

13

Si può dire Postgres per interpretare some value as NULL, ad esempio:

COPY soc FROM '~/soc.asc' WITH DELIMITER AS '$' NULL AS ''