19.13. 版本和平台兼容性

19 .13.1. 先前的 PostgreSQL 版本

请注意,即使此变量为off,也可以创建包含空值的数组值。

请注意,在符合标准的字符串 Literals 中,\始终表示\。此参数仅影响对不符合标准的 Literals 的处理,包括转义字符串语法(E'...')。

不建议在用户表中使用 OID,因此大多数安装应禁用此变量。需要特定表的 OID 的应用程序在创建表时应指定WITH OIDS。可以启用此变量以与不遵循此行为的旧应用程序兼容。

希望将反斜杠用作转义的应用程序应修改为使用转义字符串语法(E'...'),因为根据 SQL 标准,普通字符串的默认行为现在是将反斜杠视为普通字符。可以启用此变量来帮助查找需要更改的代码。

设置此变量不会禁用与大对象相关的所有安全检查,仅禁用那些默认行为在 PostgreSQL 9.0 中已更改的安全检查。

有关更多信息,请参见Section 4.1.6

19 .13.2. 平台和 Client 端兼容性

但是,Microsoft Access 中过滤的表单会生成查询,这些查询似乎使用expr = NULL来测试空值,因此,如果您使用该接口访问数据库,则可能需要打开此选项。由于形式expr = NULL的表达式始终返回空值(使用 SQL 标准解释),因此它们不是很有用,并且在普通应用程序中不经常出现,因此此选项在实践中几乎没有危害。但是新用户经常对涉及空值的表达式的语义感到困惑,因此默认情况下此选项处于关闭状态。

请注意,此选项仅影响精确的形式= NULL,而不影响其他比较运算符或与包含 equals 运算符的某些表达式在计算上等效的其他表达式(例如IN)。因此,此选项不是错误编程的一般解决方案。

有关相关信息,请参阅Section 9.2

上一章 首页 下一章