PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Psql COPY mit Einschränkung schlägt fehl

Es scheint, dass Ihre Quell-CSV den ' verwendet (einfaches Anführungszeichen), um alle Spalten zu zitieren. Sie können dies als Anführungszeichen angeben, indem Sie die Option QUOTE

Die \copy Befehl versucht, 'old' zu laden in die Statusspalte, die überprüft, ob die Werte entweder new sind oder old . Die zusätzlichen Anführungszeichen verletzen die Einschränkung.

\copy example_table(name,status) FROM example.sql DELIMITER ',' CSV Header QUOTE ''''

4 einfache Anführungszeichen sind erforderlich, da 1 das eigentliche Anführungszeichen angibt, 1 das Anführungszeichen maskiert und 2 das maskierte Anführungszeichen einschließt.