pgsql查询里面包含了单引号的问题
postgresql查询关键字有时候会遇到英文单引号的情况,比如你要查询一个英文句子,How's your ....?
这里会发现遇到了一个pg查询会报错
这里会发现遇到了一个pg查询会报错
PG::SyntaxError: ERROR: syntax error at or near "s"
(')单引号是postgresql中表示值的符号。
可以通过下面的正则处理下,
无论有多少个单引号,一律换成 两个单引号'',这样就符合pgsql的规范。
考虑到各种意外的情况,不能只考虑一个单引号的问题,凡是奇数个单引号进入查询语句都会有问题。所以相对正确的方式是:
term = term.gsub(/'+/, "''")
这也不是最好的,因为正则我也不知道如何判断奇数个。。。
姑且这样处理了。
阅读量: 711
发布于:
修改于:
发布于:
修改于: