标题:求助!ORACLE创建物化视图的问题
只看楼主
leonardo38
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2009-1-1
结帖率:20%
已结贴  问题点数:6 回复次数:3 
求助!ORACLE创建物化视图的问题
create materialized view log on kct98 ----kct98 为表名
----注:(TEST为表名或者视图名,关于视图上建立物化视图,见基于视图的物化视图
----创建物化视图语句:
Create materialized view MV_TEST
----MVTEST 为物化视图名
Build immediate
----创建时生成数据对应的是 build deferred
Refresh fast
----增量刷新
On commit
----在基表有更新时提交,这里该句对视图无效
With rowid
----这里创建基于rowid的物化视图,对应的是 primary key
As
Select * from kct98;
----生成物化视图数据语句


上面的这段是我创建物化视图的SQL,是使用的PLSQL工具连接的ORACLE数据库执行的,执行后报错,说是:create materialized view log选项无效
请问哪位高手能指点下,如何针对数据库里面的KCT98这个表建立物化视图啊,目前的KCT98没有建立主键,但这个表里有个XSVINM的字段是唯一字段,就像身份证号码一样,是不允许重复的
搜索更多相关主题的帖子: Create 
2011-06-13 15:54
leonardo38
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2009-1-1
得分:0 
另外,对SQL进行更新以后的的语句如下:
CREATE MATERIALIZED VIEW LOG ON kct98
tablespace dms --日志保存在特定的表空间
WITH ROWID ;

create materialized view test
TABLESPACE dms --保存表空间
BUILD DEFERRED --延迟刷新不立即刷新
refresh force --如果可以快速刷新则进行快速刷新,否则完全刷新
on commit --按照指定方式刷新
as
select * from kct98

但这个建立的物化视图查询后为何没有数据,原来的表kct98是有数据的,查询建立的物化视图test却无数据,这是为什么?麻烦哪位高手指点下
2011-06-14 11:18
路過
Rank: 3Rank: 3
等 级:论坛游侠
威 望:7
帖 子:160
专家分:111
注 册:2006-12-15
得分:6 
去掉這句 BUILD DEFERRED --延迟刷新不立即刷新 。
一般這樣就可以了:
create materialized view test_b as
  select *
    from KCT98

2011-06-17 08:31
路過
Rank: 3Rank: 3
等 级:论坛游侠
威 望:7
帖 子:160
专家分:111
注 册:2006-12-15
得分:0 
我在網上找的 http://xznsoft.  希望對你有幫助

2011-06-17 08:46



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-342695-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.227186 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved