DSN_USERQUERY_TABLE

DSN_USERQUERY_TABLE表用于识别访问路径受影响的语句。 这些值确定了用于影响访问路径选择的语句和方法。 当发出BIND QUERY命令时,DSN_USERQUERY_TABLE中的值用于填充某些目录表。

开始特定程序编程接口信息。

当您修改并运行DSNTESH示例作业时,DSN_USERQUERY_TABLE将创建。

您可以根据自己的模式创建此表,也可以在BIND QUERY命令的EXPLAININTPUTSCHEMA选项中指定不同的模式。

创建表格语句

以下语句创建一个用户查询表:

 CREATE TABLE userid.DSN_USERQUERY_TABLE
 (
 QUERYNO        INTEGER      NOT NULL PRIMARY KEY,
 SCHEMA         VARCHAR(128) NOT NULL DEFAULT ' ',
 HINT_SCOPE     SMALLINT     NOT NULL DEFAULT 0,
 QUERY_TEXT     CLOB(2M)     NOT NULL,
 QUERY_ROWID    ROWID        NOT NULL  GENERATED ALWAYS,
 QUERYID        BIGINT       NOT NULL DEFAULT 0,
 USERFILTER     CHAR(8)      NOT NULL DEFAULT ' ',
 OTHER_OPTIONS  CHAR(128)    NOT NULL DEFAULT ' ',
 COLLECTION     VARCHAR(128) NOT NULL DEFAULT ' ',
 PACKAGE        VARCHAR(128) NOT NULL DEFAULT ' ',
 VERSION        VARCHAR(128) NOT NULL DEFAULT ' ',
 REOPT          CHAR(1)      NOT NULL DEFAULT ' ',
 STARJOIN       CHAR(1)      NOT NULL DEFAULT ' ',
 MAX_PAR_DEGREE INTEGER      NOT NULL DEFAULT -1,
 DEF_CURR_DEGREE CHAR(3)     NOT NULL DEFAULT ' ',
 SJTABLES       INTEGER      NOT NULL DEFAULT -1,
 OTHER_PARMS    VARCHAR(128) NOT NULL DEFAULT ' '
 SELECTVTY_OVERRIDE CHAR(1)  NOT NULL DEFAULT 'N'
 ACCESSPATH_HINT CHAR(1)     NOT NULL DEFAULT ' '
OPTION_OVERRIDE  CHAR (1)    NOT NULL DEFAULT ' '
 ) IN database-name.table-space-name

CCSID UNICODE;

列描述

下表描述了DSN_USERQUERY_TABLE的列。
表 1. DSN_USERQUERY_TABLE 描述
列名 数据类型 描述
QUERYNO 整数,非空,主键 查询的唯一标识符,用于与PLAN_TABLE行相关联,以获取语句级访问路径。
SCHEMA VARCHAR(128) NOT NULL DEFAULT ' ' 查询中除函数外的非限定数据库对象的默认模式名称,或留空
提示范围 SMALLINT NOT NULL DEFAULT 0 匹配的范围。
0
系统级访问路径提示或默认值
1
套餐级访问计划提示。
QUERY_TXT CLOB( 2M ) NOT NULL SQL 语句的文本。
UserFilter CHAR(8) NOT NULL 您可以指定一个过滤器名称,将一组行分组,也可以留空。 该值可用于通过一个FREEQUERY命令同时删除一组相关行。
其他选项 CHAR(128) NOT NULL DEFAULT ' ' 仅供 IBM® 内部使用,或留空
集合 VARCHAR(128) NOT NULL DEFAULT ' ' SYSIBM.SYSPACKAGE 目录表中软件包的集合名称。

当HINT_SCOPE列的值为0时,该值是可选的。

PACKAGE VARCHAR(128) NOT NULL DEFAULT ' ' SYSIBM.SYSPACKAGE 目录表的包名称。

当HINT_SCOPE列的值为0时,该值是可选的。

版本 VARCHAR(128) NOT NULL DEFAULT ' ' 用于检索 SYSIBM.SYSPACKAGE 目录表绑定选项的包版本,或“*”。 当HINT_SCOPE列的值为0时,该值是可选的。

当指定“*”时, Db2 仅使用COLLECTION和PACKAGE值在 SYSIBM.SYSPACKAGE 和 SYSIBM.SYSQUERY 目录表中查找行。

REOPT VARCHAR(128) NOT NULL DEFAULT ' ' REOPT绑定选项的价值:
“A”
REOPT(AUTO)
“1”
REOPT(ONCE)
'N'
REOPT(NONE)
“Y”
REOPT(ALWAYS)
空白
未指定。
星聚 CHAR(1) NOT NULL DEFAULT ' ' 查询是否启用了星号连接处理:
“Y”
启用STARJOIN。
'N'
STARJOIN已禁用。
空白
未指定。
最大允许角度 整数,非空,默认值 -1 最大平行度或 -1 (如未指定)。
当前温度 CHAR(3) NOT NULL DEFAULT ' ' 是否启用了并行:
'one'
并行已禁用。
“任何”
启用平行化。
空白
未指定。
SJTABLES 整数,非空,默认值 -1 符合星级加盟处理条件的最低桌数,或 -1 (未指定时)。
查询ID BIGINT NOT NULL DEFAULT 0 在 SYSIBM.SYSQUERY 和 SYSIBM.SYSQUERYPLAN 目录表中识别相关的访问计划提示信息。
其他参数 VARCHAR(128) NOT NULL 仅供 IBM 内部使用,或留空
SELECTVTY_OVERRIDE CHAR(1) NOT NULL DEFAULT 'N' 该行是否为查询创建选择性覆盖:
“Y”
选择性覆盖被创建。
'N'
选择性覆盖不会被创建。

当ACCESSPATH_HINT的值为“Y”或为空时,或者当OPTION_OVERRIDE的值为空时,该值必须设置为“N”。

访问路径提示 CHAR(1) NOT NULL DEFAULT ' ' 行是否指定了查询的访问路径:
“Y”
访问路径已指定。
'N'
访问路径未指定。
空白
如果相关的PLAN_TABLE实例包含指定访问路径的行,则可以指定访问路径。

如果SELECTVTY_OVERRIDE或OPTION_OVERRIDE列的任一值是“Y”,则该值必须设置为“N”

当此列的值为空时,OPTION_OVERRIDE列的值也必须为空,SELECTIVITY_OVERRIDE列的值必须为“N”。

选项覆盖 CHAR(1) NOT NULL DEFAULT ' ' 是否创建了声明级优化参数:
“Y”
优化参数已创建。
'N'
优化参数未创建。
空白
如果此表中指定了某些列的值,且相关的PLAN_TABLE实例不包含指定访问路径的行,则可以创建优化参数。

当ACCESSPATH_HINT的值为“Y”时,该值必须设置为“N”。

当此列的值为空时,ACCESSPATH_HINT列的值也必须为空。

结束特定程序编程接口信息。