在不同版本的postgresql中的反斜杠行为

  • 本文关键字:postgresql 版本 postgresql
  • 更新时间 :
  • 英文 :


我必须在不同版本的PostgreSQL(从8.3到9.6)上运行一系列查询,并且我有反斜杠字符的问题,因为在8。X版本需要转义,在9。

此刻,我运行查询SELECT '\'并检查结果是否为"""\",以便我知道反斜杠是否需要转义。

我想知道是否有某种方法,通过查询,告诉postgres以相同的方式处理反斜杠(不修改其配置,因为我无法访问这些安装的配置)。

此行为由参数standard_conforming_strings控制,该参数在8.2版中引入。
在9.1版本中,该参数的默认值更改为on

如果standard_conforming_stringsoff,反斜杠是字符串字面量中的转义字符。

您可以使用SETSQL语句更改数据库会话的参数,不需要更改配置。另一种选择是始终使用“extended "字符串字面值(在开始的单引号前面加上一个E)—在这样的字面值中,反斜杠始终是转义字符:

SELECT E'\';
?column? 
══════════

(1 row)

相关内容

  • 没有找到相关文章

最新更新