O escape de aspas simples no SQL (padrão) é feito usando duas aspas simples, por exemplo,
'Peter''s house'
Eu prefiro usar o
ARRAY[..]
explícito que também precisa de uma citação a menos, então sua inserção pode ser escrita como:INSERT into t1 (columnname)
VALUES (ARRAY['str1', 'str2''with quote symbol']);
Nas versões anteriores à 9.1, o Postgres tinha permissão para usar
\
como um caractere de escape alternativo, mas registraria um aviso se estiver sendo usado. Desde 9.1 o parâmetro de configuração standard_conforming_strings
está ativado e, portanto, o \
não pode ser usado como um escape de aspas simples.