Sembra che il tuo csv di origine stia usando il '
(virgolette singole) per citare tutte le colonne. Puoi specificarlo come carattere di virgolette usando l'opzione QUOTE
Il \copy
il comando sta tentando di caricare 'old'
nella colonna di stato che controlla che i valori siano new
o old
. Le virgolette extra violano il vincolo.
\copy example_table(name,status) FROM example.sql DELIMITER ',' CSV Header QUOTE ''''
Sono necessarie 4 virgolette singole perché 1 specifica il carattere di virgoletta effettivo, 1 per evitare il carattere di virgoletta e 2 racchiude il carattere di virgoletta di escape.