【发布时间】:2020-08-26 00:27:32
【问题描述】:
我测试了包含以下列的表:id:int、status:string 和 payload:jsonb
我在一个元组中有要插入到测试表中的值:
record=(1234567, 'ERROR','{"header": "Response", "status": "Err", "Details": "Replace ''Jonh''s Assoc.'' → ''Jonh''s Civil Assoc."}')
将记录传递给游标执行:
cur.execute('insert into test VALUES {};'.format(record))
执行查询后插入语句如下所示:
insert into test VALUES (1234567, 'ERROR','{"header": "Response", "status": "Err", "Details": "Replace \'\'John\'\'s Assoc.\'\' → \'\'John\'\'s Civil Assoc."}');
如果您注意到,字符串会在每个引号中添加反斜杠。所以我最终得到了以下错误:
(psycopg2.errors.SyntaxError) syntax error at or near "\"
"Details": "Example: Replace \'\'John\'\'s...
^
我们将不胜感激。
谢谢
【问题讨论】:
-
... "issues": [{"issue": "one": [{"Details": ...: 这不是有效的 JSON 开头。
标签: python sql postgresql sql-insert psycopg2