当前位置: 首页 > 知识库问答 >
问题:

where子句中的Postgresql转义单引号[重复]

钮实
2023-03-14

所以我试着运行这样一个脚本:

select id
from owner 
where owner.name = "john's"

我得到了这个错误:错误:列“john's”不存在

我也试过这样做:where owner.name='john's',但它不起作用

有人知道我如何运行这样的查询吗?

共有2个答案

夏涵畅
2023-03-14

试试这个

select id
from owner 
where owner.name = (E'john\'s')::text

更新:我们可以使用此语句转义大多数字符

select id
from owner 
where owner.name = (E'john\character you want to escape's')::text
翟嘉年
2023-03-14

当双引号时,可以对单引号进行转义。例如:

= 'john''s'
 类似资料:
  • 与其在文本中转义每个,有没有办法一次转义它们,就像这样:

  • 问题内容: 我有这样的查询: 出现以下错误: 在MySql中,这是有效的,但显然在Postgresql中是无效的。据我所知,原因是查询部分的评估晚于该部分。是否有解决此问题的常用解决方法? 问题答案: 正如您所经历的那样,MySQL的支持是非标准的。正确的方法是重新打印SELECT子句中使用的相同表达式:

  • 我试图通过displayName查询用户,但在通过C#SDK和Graph Explorer发送请求时,我很难转义单引号。 更新:示例中不清楚,我遇到问题的搜索词是 查询示例:https://graph.microsoft.com/v1.0/users?$filter=startsWith(displayName,'I')结果为 我尝试了各种各样的转义,用反斜杠,双引号,代替引号,没有任何效果。使用

  • 问题内容: 这个问题已经在这里有了答案 : 如何防止PHP中进行SQL注入? (28个答案) 4年前关闭。 我有一个困惑的问题,我似乎无法理解… 我有两个SQL语句: 第一个将信息从表单输入数据库。 第二个从上面输入的数据库中获取数据,发送电子邮件,然后记录交易的详细信息 问题是似乎单引号仅在第二个条目上触发MySQL错误!第一个实例可以正常工作,但是第二个实例触发。 表单中的数据处理方式与表单中

  • 问题内容: 我该如何工作? 将在引起此故障。我从类似的文件运行它,但也无法从命令行运行。我试过使用and 和(unicode ) 我被卡住了 问题答案: 我有同样的问题。最简单的解决方案是,除了用单引号引起来的撇号外,还要使用反斜杠来将其引起来。 对于您的用例,更改为,它应该可以工作。 另一种方法是将POST数据()用双引号引起来,同时用反斜杠转义JSON字符串中所有嵌套的双引号。

  • 问题内容: 我有一个正在编写的脚本,用于将某些字段移至新的数据库,例如 但是如您所见,由于单引号和双引号,查询每次都会中断,是否有解决此问题的方法,例如herdok或类似的东西 问题答案: 为此而制作的。 PHP:mysql_real_escape_string