OLAP 安装和用户指南

在 SQL 应用程序中使用其他视图

本节提供有关其他视图的信息,这些视图在您编写 SQL 应用程序来查询 DB2 OLAP 服务器多维数据时, 您也许会发现它们很有用。这些视图包括关系属性、用户定义属性、别名和链接报告对象 (LRO)。

使用关系属性视图

当您向一个维表添加关系属性列时,DB2 OLAP 服务器在该维的关系属性表中记录其名称、数据类型和大小。可通过关系属性视图访问该表。

关系属性视图名是从方块视图的 RATViewName 列获取的。

表 19显示有关关系属性视图中的列的详情。

表 19. 关系属性视图的内容
名称 类型 最大大小 内容
RATCOLUMNNAME VarChar 20 关系属性列名,可能由单引号引起。
RATCOLUMNTYPE Integer
一个数字,指示关系属性列的数据类型:
  • 1 = 字符 (CHAR)
  • 4 = 整数 (INT)
  • 5 = 小型整数 (SMALLINT)
  • 12 = 可变字符 (VARCHAR)
RATCOLUMNSIZE Integer
如果 RATCOLUMNTYPE 是 4 或 5,则 RATCOLUMNSIZE 是 0。如果 RATCOLUMNTYPE 是 1 或 12,则 RATCOLUMNSIZE 是为该列指定的大小。

要访问关系属性视图中的数据,您的应用程序必须首先从方块视图确定该视图的名称。

例如,要查找 Basic 数据库中 Product 维的关系属性视图名,可使用以下 SQL 语句:

SELECT RATVIEWNAME FROM OLAPSERV.SAMPBASI_CUBEVIEW WHERE DIMENSIONNAME='PRODUCT'

此查询可能返回:OLAPSERV.SAMPBASIR_PRODUCT

您可以在 SQL 语句中使用关系属性视图中的信息。 通过从关系属性视图中选择行,您可以获取关系属性列的列表、它们的类型以及对应维的大小。

在以下示例中,一个 SQL SELECT 语句在 SAMPLE 应用程序中检索 BASIC 数据库中的 PRODUCT 维的关系属性信息。

SELECT RATCOLUMNNAME,RATCOLUMNTYPE,RATCOLUMNSIZE FROM SAMPBASIR_PRODUCT.

此查询的结果可能是:

RATCOLUMNNAME  RATCOLUMNTYPE  RATCOLUMNSIZE
=============  =============  =============
COLOR          1              10

在此结果中,在 Product 维上有一个称为 Color 的关系属性列。列类型 1 指示它是字符列,而大小 10 指示它可保留每行最多 10 个字符。

使用用户定义属性视图

对于一个方块的每个维,DB2 OLAP 服务器都会维护一个用户定义属性视图。 每个成员/属性组合都有一行。使用此视图,可获取有关维的成员的信息。

用户定义属性视图的名称取自方块视图的 UDAViewName 列。

表 20显示有关用户定义属性视图中的列的详情。

表 20. 用户定义属性视图的内容
名称 类型 最大大小 内容
MemberName VarChar 80 该成员的名称。
UDA VarChar 80 用户定义属性的文本字符串。

要访问 UDA 视图中的数据,您的应用程序必须首先从方块视图中确定该 UDA 的名称。

例如,要查找 Basic 数据库中 Product 维的 UDA 视图名,可使用以下 SQL 语句:

SELECT UDAVIEWNAME FROM OLAPSERV.SAMPBASI_CUBEVIEW WHERE DIMENSIONNAME='PRODUCT'

此查询可能返回:OLAPSERV.SAMPBASIU_PRODUCT

要对 Sample 应用程序中的 Basic 数据库列示相关用户定义属性为 Promotion 的所有产品的成员名:

SELECT MEMBERNAME FROM OLAPSERV.SAMPBASIU_PRODUCT WHERE UDA = 'Promotion'

使用别名 ID 视图

对于每个关系方块,DB2 OLAP 服务器都维护一个别名 ID 视图。对于在轮廓内 使用的每个多维别名表,它都包含一行。使用此视图,可确定对于方块哪些别名是可用的。

别名 ID 视图名取自方块目录视图。

表 21显示有关别名 ID 视图中的列的详情。

表 21. “别名 ID 视图”的内容
名称 类型 最大大小 内容
AliasTableName VarChar 80 多维别名表的名称。它是与方块成员相关的一组别名的集合名称。
RelAliasTableName VarChar 18 此别名表的 DB2 OLAP 服务器名称。此名称用于维视图的别名列。

要访问别名 ID 视图中的数据,您的应用程序必须首先从方块目录视图中确定该别名 ID 视图的名称。

例如,要查找 Sample 应用程序中 Basic 数据库的 UDA 视图名,应使用以下 SQL 语句:

SELECT ALIASIDVIEWNAME FROM OLAPSERV.CUBECATALOGIEW
  WHERE APPNAME='Sample' AND CUBENAME='Basic'

此查询的结果可能是:

OLAPSERV.SAMPBASI_ALIASID

要列示一个方块的别名表:

SELECT ALIASTABLENAME FROM OLAPSERV.SAMPBASI_ALIASID
 

要确定当使用 French Names 别名表中的别名来构造约束时要使用哪个维视图列:

SELECT RELALIASTABLENAME FROM OLAPSERV.SAMPBASI_ALIASID
  WHERE ALIASTABLENAME='French Names'
 

对于 RelAliasTableName 为 FrenchNames 的维,要列示其成员的成员名及其法语别名:

SELECT MEMBERNAME,FRENCHNAMES FROM OLAPSERV.SAMPBASID_PRODUCT

使用“链接报告对象”(LRO) 视图

对于每个方块,DB2 OLAP 服务器都维护一个 LRO 视图。使用此视图确定哪些链接报告对象与方块中的个别单元相关。 每个链接对象或单元注解都有一行。

LRO 视图名取自方块目录视图。

LRO 视图内容

表 22显示有关 LRO 视图中列的详情。 在该视图中,每个维有一个附加列,还有一些包含有关相关对象信息的列。

表 22. 方块视图的内容
名称 类型 最大大小 内容
维列。该维的简称,取自方块表的 RelDimensionName 列 VarChar
与对象相关的此维的成员名。
STOREOPTION Small Integer

此列的值是:

  • 0,如果相关的对象存储在客户机上
  • 16,如果相关的对象存储在服务器上

OBJTYPE Small Integer

此列的值是:

  • 0,如果相关的对象是注解
  • 1,如果相关的对象是应用程序数据

句柄 Integer
每个注解或对象的唯一标识符。 当多个对象与一个单元相关时,使用该句柄来唯一地标识其中一个对象。
USERNAME VarChar 31 创建此对象的用户的名称。
UPDATEDATE Integer
表示上次更新对象的时间的 UTC 时间戳记。
OBJNAME VarChar 512 如果对象类型是 1(应用程序数据),此列包含该对象的文件名。
OBJDESC VarChar 80 如果对象类型是 1,此列包含该对象的说明。
NOTE VarChar 600 如果对象类型是 0(注解),此列包含该注解的文本。

使用 SQL 语句查询 LRO 视图

要访问 LRO 视图中的数据,您的应用程序必须首先从方块目录视图中确定该 LRO 视图的名称。

例如,要查找 Sample 应用程序中 Basic 数据库的 LRO 视图名,应使用以下 SQL 语句:

SELECT LROVIEWNAME FROM OLAPSERV.CUBECATALOGVIEW
  WHERE APPNAME='Sample' AND CUBENAME='Basic'

此查询的结果可能是:

OLAPSERV.SAMPBASI_LROVIEW

要列示与一个方块相关的所有应用程序对象的说明:

SELECT OBJDESC, USERNAME FROM OLAPSERV.SAMPBASI_LROVIEW WHERE OBJTYPE=0

要列示 Gary Robinson 所做的所有注解:

SELECT NOTE FROM OLAPSERV.SAMPBASI_LROVIEW WHERE OBJTYPE=1 AND USERNAME='Gary Robinson'

通过在 SELECT 语句的 WHERE 子句中指定一个单元的每一维的成员 ID,可查询与该单元相关的链接报告对象。


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]