Voglio importare un file CSV nella versione 9.2 ma il file CSV ha una virgoletta doppia citazione nella posizione della colonna finale per rappresentare un valore NULL :non può copiare CSV nella tabella postgreSQL: la colonna timestamp non accetta la stringa vuota
"2","1001","9","2","0","0","130","","2012-10-22 09:33:07.073000000",""
che è associata a una colonna di tipo Timestamp. a PostgreSQL non piace "". Ho provato a impostare l'opzione NULL ma forse non lo sto facendo correttamente? Ho provato NULL as '""
e NULL ''
e NULL as ''
e NULL ""
ma senza successo; ecco il mio comando:
COPY SCH.DEPTS
FROM 'H:/backups/DEPTS.csv'
WITH (
FORMAT CSV,
DELIMITER ',' ,
NULL '',
HEADER TRUE,
QUOTE '"'
)
ma non riesce con un errore:
ERROR: invalid input syntax for type timestamp: ""
CONTEXT: COPY depts, line 2, column expirydate: ""
P.S. C'è un modo per specificare la rappresentazione della stringa di Booleans al comando COPY? L'utilità che ha prodotto i CSV (di cui ce ne sono molti) ha utilizzato "false" e "true".
questo formato di esportazione da MSFT è diverso da qualsiasi CSV che ho visto prima, in quanto cita tutti i valori indipendentemente dal fatto che siano numerici o stringhe. Quasi come se stessero rendendo l'esportazione meno utile di proposito ;-) Sta inviando anche "true" 'not' true'. È ora di ripulire le esportazioni. Grazie per i suggerimenti di Kettle e Talend. – Tim