使用 SET ENVIRONMENT 语句的 SELECT_GRID 选项来为网格查询定义缺省的 GRID 子句。此子句指定缺省的网格或区域,从其来返回等同于来自参与的网格服务器的符合条件的行的逻辑
UNION 的结果集。
SELECT_GRID 会话环境选项可设置为任何三个选项:
- ’grid’
- 这指定缺省的网格,不包括 GRID 子句的 SELECT 语句从其返回结果集,该结果集是来自指定的 grid 中所有参与的网格服务器的不同的符合条件的值的逻辑
UNION。在 SET ENVIRONMENT 的 SELECT_GRID 选项设置为网格的名称时,发出 SET ENVIRONMENT SELECT_GRID
’grid’ 语句的数据库服务器将所有查询翻译为 UNION 网格查询。
- ’region’
- 这指定缺省的区域,不包括 GRID 子句的 SELECT 语句可从其返回结果集,该结果集是来自指定的区域中所有参与的网格服务器的不同的符合条件的值的逻辑 UNION。在
SET ENVIRONMENT 语句的 SELECT_GRID 选项设置为区域的名称时,发出 SET ENVIRONMENT SELECT_GRID
’region’ 语句的数据库服务器将所有查询翻译为 UNION 网格查询。
- DEFAULT
- 此设置指定缺省的行为。在 SET ENVIRONMENT 语句的 SELECT_GRID 选项设置为 DEFAULT 时,数据库服务器不处理每个没有 GRID 子句的查询作为网格查询。因此,DEFAULT
设置指定没有 SELECT 语句的缺省的 GRID 子句。使用此选项来禁用先前的 SET ENVIRONMENT SELECT_GRID 或 SET ENVIRONMENT
SELECT_GRID_ALL 语句的作用,该语句为不包括 GRID 子句的所有查询定义了缺省的 GRID 子句。
SET ENVIRONMENT 语句的 SELECT_GRID 与 SELECT_GRID_ALL 选项是相互排他的。在您发出 SET ENVIRONMENT SELECT_GRID
或 SET ENVIRONMENT SELECT_GRID_ALL 语句之后,在相同的会话中发出任一个语句的不同的选项,会取代先前的 SET ENVIRONMENT
SELECT_GRID 或 SET ENVIRONMENT SELECT_GRID_ALL 语句建立的作为网格查询的任何服务器行为。
在 SELECT_GRID 会话环境变量设置为 ON 时,请不要调用 ifx_gridquery_skipped_nodes() 函数。
在网格上下文之外,SELECT_GRID 会话环境选项不应设置为 ’grid’ 或 ’region’。要获取更多关于网格的信息,请参阅 GRID 子句 和 GBase 8s Enterprise
Replication 指南。