Ошибка экранирования в Redshift PostgreSQL

Я получаю эту ошибку при вставке данных в Amazon Redshift DB.

Ошибка базы данных: произошла ошибка базы данных

Error Number:
ERROR:  type "e" does not exist
INSERT INTO "api_data" ("verb", "request", "uri", "user_id", "device_id", "os", "lat", "long", "app_version", "platform", "network_type", "date_added", "response") VALUES ('post',  E'{"prn":"28135","nce":"WqN6YHtXPzz\\/QAqhj1+TNi2p1nL64f3Ttr77IYZz9vzXaF7DpBF2CSss2aclltI3W\\/PgOXaecqW\\/VAmwVqTlow=="}', 'https://dev.kraftly.com/api/v1/Layer/chatAuthEnc', 0, 'NULL', 'iOS 9.1', NULL, NULL, 'Version 2', 'NULL', 'NULL', '2016-03-21 17:26:24', 'NULL')

Пожалуйста, предоставьте мне любые решения. Спасибо

1

Решение

Это, вероятно, связано с использованием pg_escape_literal. Это создает экранированную строку с кавычками вокруг нее. Если строка содержит обратную косую черту, к целому добавляется E, как вы можете видеть в своем запросе. Redshift, очевидно, не может справиться с этим.

1

Другие решения

Других решений пока нет …