Ich bin mit Postgres 9.5.3 (auf Ubuntu 16.04) und ich habe eine Tabelle mit einigen timestamptz
FeldernPostgres: Fehler, wenn sie aus einer CSV mit timestamptz Typ mit COPY
...
datetime_received timestamptz NULL,
datetime_manufactured timestamptz NULL,
...
ich den folgenden SQL-Befehl verwendet CSV-Datei erzeugen:
COPY (select * from tmp_table limit 100000) TO '/tmp/aa.csv' DELIMITER ';' CSV HEADER;
und gebraucht:
COPY tmp_table FROM '/tmp/aa.csv' DELIMITER ';' CSV ENCODING 'UTF-8';
in die Tabelle zu importieren.
Das Beispiel der Zeilen in der CSV-Datei:
CM0030;;INV_AVAILABLE;2016-07-30 14:50:42.141+07;;2016-08-06 00:00:000+07;FAHCM00001;;123;;;;;1.000000;1.000000;;;;;;;;80000.000000;;;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;2016-07-30 14:59:08.959+07;
Aber ich begegne den folgenden Fehler, wenn der zweite Befehl ausgeführt wird:
ERROR: invalid input syntax for type timestamp with time zone: "datetime_received"
CONTEXT: COPY inventory_item, line 1, column datetime_received: "datetime_received"
Zeitzone Mein-Datenbank ist:
show timezone;
TimeZone
-----------
localtime(GMT+7)
(1 row)
Gibt es einen fehlenden Schritt oder eine falsche Konfiguration?
Alle Vorschläge sind willkommen!
Wie sehen Zeilen in '/ tmp/aa.csv' aus? – donkopotamus
@donkopotamus Bearbeitet;) –
Nur ein Verdacht: Änderung' 2016-08-06 00: 00: 00 + 07' bis '2016- 08-06 00: 00: 00.000 + 07' in dieser Zeile und lass es bitte nochmal laufen. –