zoukankan      html  css  js  c++  java
  • DB2物化表

    DB2物化查询表(MQT)是DB2数据库中一类特殊的表

    物化表和视图的区别

    物化表是一个查询结果集,视图是一个SQL语句。

    以下是一个简单例子(说明物化表)

    1.创建表,插入测试数据

    ----创建表
    CREATE TABLE UserInfo 
    (
     ID    INT NOT NULL,
     NAME  VARCHAR(20),
     Hight INT,
     sex    CHAR(2)
    )
    --*********************************************************************
    ------------------------values插入数据---------------------------------
    --*********************************************************************
    --------------------------单条数据插入
    INSERT INTO UserInfo(ID,NAME,Hight,sex) VALUES(1,'杭允贤','168','');
    
    --------------------------插入多条数据
    INSERT INTO UserInfo(ID,NAME,Hight,sex) VALUES(2,'王振','175',''),(3,'朱祁钰','173','')

    2.创建物化表

    SELECT * FROM new_UserInfo
    
    create table new_UserInfo as   
     
    (select * from UserInfo)   
     
    data initially deferred refresh IMMEDIATE;  
     
    refresh table new_UserInfo;

    注意:在创建时可能会出现以下错误(导致出错的原因是:对于refresh immediate类型的MQT在select时必须包含所FROM的每个表的至少一个唯一键。假如不包含唯一键,则会报错:SQLSTATE:428EC (为具体化查询表,指定的全查询无效)。)

    解决办法:

    ALTER TABLE UserInfo ADD UNIQUE(ID) 

    表UserInfo截图

    表new_UserInfo截图

    现在在表UserInfo中插入一条数据,查询出表new_UserInfo的结构如下:

    INSERT INTO UserInfo(ID,NAME,Hight,sex) VALUES(4,'杭刚','177','');

    这是自动更新物化表,同时也可以将物化表改为手动更新的

  • 相关阅读:
    校验身份证有效性
    JAVA实现redis超时失效key 的监听触发
    Java8中时间日期库的20个常用使用示例
    ppt制作元素采集
    查找数据的网站
    在centos7中python3的安装注意
    使用yum安装不知道到底安装在什么文件夹
    linux为什么不可以添加硬链接
    五一之起一台服务器玩玩-花生壳配置
    centos6.5-vsftp搭建
  • 原文地址:https://www.cnblogs.com/OliverQin/p/5305462.html
Copyright © 2011-2022 走看看