O caractere de escape de barra invertida do Postgresql não funciona para escapar de um delimitador de vírgula no arquivo COPY FROM csv. Estou usando o Postgresql versão 12. Eu tentei isso:
COPY myTable
FROM '/tmp/myTest.csv'
WITH CSV HEADER DELIMITER ','
;
e isto:
COPY myTable
FROM '/tmp/myTest.csv'
WITH CSV HEADER DELIMITER ',' ESCAPE '\'
;
qualquer um não funciona. Se eu remover todos os \,
do arquivo de entrada, funciona, mas perco todas as vírgulas que precisam estar nos dados.
Não é assim que o formato CSV funciona. Somente o caractere de aspas é escapado, outros caracteres são protegidos por aspas, não por escape. Pelos documentos :
Se seus dados não estiverem usando aspas para proteger caracteres especiais, não são CSV. Talvez você deva tentar carregá-lo como FORMAT TEXT, não FORMAT CSV.