为会话启用或禁用外部伪指令

在会话期间,如果在配置文件中 EXT_DIRECTIVES 参数设置为 0,或 SET ENVIRONMENT 语句中的 EXTDIRECTIVES 关键字设置为 0OFFoff,则 GBase 8s 忽略外部伪指令。

此外,当 IFX_EXTDIRECTIVES 环境变量设置为 0 时,客户端系统可为它的当前会话禁用外部伪指令。

下表展示对于在客户端系统上的有效的 IFX_EXTDIRECTIVES 设置的各种组合,以及在 GBase 8s 上,有效的 EXT_DIRECTIVES 配置参数设置的各种组合,是否禁用(OFF)或启用(ON)外部伪指令:
表 1. IFX_DIRECTIVES 设置与 EXT_DIRECTIVES 配置参数设置的组合
在客户端系统上的 IFX_EXTDIRECTIVES 设置 EXT_DIRECTIVES = 0 EXT_DIRECTIVES = 1 EXT_DIRECTIVES = 2
IFX_EXTDIRECTIVES 未设置 OFF OFF ON
IFX_EXTDIRECTIVES = 1 OFF ON ON
IFX_EXTDIRECTIVES = 0 OFF OFF OFF

当初始化数据库服务器时,如果 EXT_DIRECTIVES 设置为 12,则服务器启用外部伪指令。单个的会话可通过设置 IFX_EXTDIRECTIVES 启用或禁用外部伪指令,如表所示。12 之外的任何设置都解释为零,禁用此特性。

当启用外部伪指令时,通过 ACTIVE、INACTIVE 或 TEST ONLY 关键字指定单个的外部伪指令的状态。(但仅在其上伪指令为有效的查询可从外部伪指令获益。)

您还可使用 SET ENVIRONMENT 语句的 EXTDIRECTIVES 选项来启用或禁用会话期间的外部伪指令。您使用 EXTDIRECTIVES 选项指定的内容重写在 ONCONFIG 文件中的 EXT_DIRECTIVES 配置参数中指定的外部伪指令值。

为了启用或禁用在 ONCONFIG 文件中的值,且:

在会话期间,要启用在 EXT_DIRECTIVES 配置参数中和在客户端侧 IFX_EXTDIRECTIVES 环境变量中的缺省的值,请指定 DEFAULT 作为 SET ENVIRONMENT 语句的 EXTDIRECTIVES 选项的值。

要获取更多关于使用 SET ENVIRONMENT 语句的 EXTDIRECTIVES 选项的信息,请参阅 SET ENVIRONMENT 语句