数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

DB2数据库物化视图:MQT物化查询表的使用[2]


发布日期:2019年04月13日
 
DB2数据库物化视图:MQT物化查询表的使用[2]

下面的小节将展示一个创建 REFRESH IMMEDIATE 类型的系统维护的 MQT 的例子这个表名为 EMP它基于 SAMPLE 数据库中的底层表 EMPLOYEE 和 DEPARTMENT由于 REFRESH IMMEDIATE MQT 要求来自查询内引用的每个表至少有一个惟一键要出现在 select 列表中所以我们首先在 EMPLOYEE 表的 EMPNO 列上定义一个惟一性约束另外还要在 DEPARTMENT 表的 DEPTNO 列上定义一个惟一性约束DATA INITIALLY DEFERRED 子句的意思是在执行 CREATE TABLE 语句的时候并不将数据插入到表中MQT 被创建好之后就会处于检查暂挂(check pending)状态在对它执行 SET INTEGRITY 语句之前不能查询它IMMEDIATE CHECKED 子句指定必须根据用于定义该 MQT 的查询对数据进行检查并刷新数据NOT INCREMENTAL 子句指定对整个表进行完整性检查

CONNECT TO SAMPLE

ALTER TABLE EMPLOYEE ADD UNIQUE (EMPNO)

ALTER TABLE DEPARTMENT ADD UNIQUE (DEPTNO)

CREATE TABLE EMP AS (SELECT EEMPNO EFIRSTNME ELASTNAME EPHONENO DDEPTNO

SUBSTR(DDEPTNAME ) AS DEPARTMENT DMGRNO FROM EMPLOYEE E DEPARTMENT D

WHERE EWORKDEPT = DDEPTNO)

DATA INITIALLY DEFERRED REFRESH IMMEDIATE

SET INTEGRITY FOR EMP IMMEDIATE CHECKED NOT INCREMENTAL

[] []

               

上一篇:DB2数据库备份参数修改后的报错问题

下一篇:DB2数据库物化视图:MQT物化查询表的使用[1]