Redshift PostgreSQL 中的转义斜杠错误
Posted
技术标签:
【中文标题】Redshift PostgreSQL 中的转义斜杠错误【英文标题】:Escaping slash error in Redshift PostgreSQL 【发布时间】:2016-03-22 13:08:23 【问题描述】:在 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 显然无法处理。
【讨论】:
以上是关于Redshift PostgreSQL 中的转义斜杠错误的主要内容,如果未能解决你的问题,请参考以下文章
使用 Amazon Redshift / PostgreSQL 进行漏斗查询
昨天 - 在 Redshift 和 PostgreSQL 中 - 日期添加兼容性
如何(以编程方式)知道何时在 PostgreSQL/Amazon Redshift 上完成查询?