使用 SAVE EXTERNAL DIRECTIVES 语句来创建指定的查询的外部优化程序伪指令,并将伪指令保存在数据库中。这些伪指令自动地应用于同一查询的后续实例。此语句是对 SQL 的 ANSI/ISO 标准的扩展。
SAVE EXTERNAL DIRECTIVES 将一个或多个优化程序伪指令与查询关联,并在 sysdirectives 系统目录表中存储此关联的一条记录,以便随后用于与指定的查询字符串相匹配的查询。此语句在优化程序伪指令的列表与查询的文本之间建立关联,但不执行指定的查询。
SAVE EXTERNAL DIRECTIVES /*+ USE_INDEX */ /*+ ORDERED */ ACTIVE FOR SELECT * FROM systables;与在查询中不同,在 SAVE EXTERNAL DIRECTIVES 语句的伪指令列表中,逗号(,)不是有效的分隔符。
仅 DBA 或用户 gbasedbt 可执行 SAVE EXTERNAL DIRECTIVES。保存在数据库中的优化程序伪指令称为外部伪指令。