У меня есть сценарий Python с операторами вставки SQL, которые вставляют проанализированные данные из файла в таблицу PostgreSQL. Если данные имеют апострофы, выполнение завершается неудачно. Подробно:
<name>RYAZAN'</name>
or
<name>CHYUL'BYU</name>
Я нашел решение, когда это строка -> добавление extra 'к апострофу, чтобы оно преобразовывалось в 'RYAZAN'''
или 'CHYUL''BYU'
в операторе INSERT.
Но если мои значения находятся в списке (из скрипта python), например, city = ["RYAZAN''", "CHYUL''BYU"]
Python автоматически ставит двойные кавычки вместо одинарных. В результате при попытке вставить
INSERT INTO City (uuid, name) VALUES (uuid_generate_v4(), unnest(array{city}))
SQL происходит сбой с ошибкой
ERROR: column "RYAZAN''.." does not exist
, поскольку sql читает двойные кавычки как имя столбца или что-то еще. Есть ли способ вставить ARRAY со значениями, которые содержат апострофы?