心理复制2单引号例外 [英] Psycopg2 single quote exception

查看:16
本文介绍了心理复制2单引号例外的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在我的应用程序中使用了心理拷贝2。一切都很好,但如下所示:当我插入一个数据包括单引号时,python抛出以下异常:

<class 'psycopg2.ProgrammingError'>: syntax error at or near "s"

内容如"儿童主页"

我找不到解决此问题的解决方案。我使用的是如下的python字符串文字:

"""INSERT INTO table (field_name) VALUES ('%s');"""
我捕获异常并返回查询。我从posgtre shell运行这个查询,它运行得很好。%的%。

推荐答案

旧线程,但在阅读本文后,我找到了此问题的解决方案。删除单引号通常不起作用,因为字符串可能包含空格。如果是这种情况,您可以通过在字符串中添加另一个单引号来转义引号,就在现有单引号后面:string.replace("'", "''"),因此

儿童主页

将变为

儿童主页

因此它将尝试插入"""INSERT INTO table (field_name) VALUES ('Kid''s page');"""

这篇关于心理复制2单引号例外的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆