我想查询一个数据库,其中一个列匹配一个字符串&这个字符串有一个单引号‘。我无法运行以下查询
SELECT *
from <table>
where <column>='robocopy'w (ithout)backup.pcap';原因是单引号用于搜索列;我尝试了双引号,但没有帮助。如果我在字符串中的单引号前面添加一个额外的单引号,我就可以传递它。
SELECT *
from <table>
where <column>='robocopy''w (ithout)backup.pcap';但是我需要一个更好的解决方案,因为每次添加一个单引号是不实际的,特别是如果它们很长并且有很多单引号的话。
发布于 2015-08-17 14:22:35
在将查询字符串发送到数据库之前,需要转义查询字符串。我无法向您展示如何操作,因为您没有发布代码,但是如果您直接在psql控制台中运行此查询,您可以通过在$$和$$中添加所有约束来转义引号,如documentation1中所引用的那样。示例:
SELECT * from <table> where <column> = $$robocopy'w (ithout)backup.pcap$$;1
https://stackoverflow.com/questions/32052737
复制相似问题