代码如下:
create materialized view log on p_BANK with rowid;
create materialized view log on p_user with rowid;create materialized view MV_bank_user
TABLESPACE MV_DATA
BUILD DEFERRED
refresh fast
on demand
start with SYSDATE
next SYSDATE +10
with rowid
as
select yhdm,count(*) num from p_bank,p_user
where scbz=1
and yhdm=area
group by yhdm;
===================================
报错:
ORA-32401: "P_USER" 上的实体化视图日志没有新值
什么原因?如何纠正?谢谢!
create materialized view log on p_BANK with rowid;
create materialized view log on p_user with rowid;create materialized view MV_bank_user
TABLESPACE MV_DATA
BUILD DEFERRED
refresh fast
on demand
start with SYSDATE
next SYSDATE +10
with rowid
as
select yhdm,count(*) num from p_bank,p_user
where scbz=1
and yhdm=area
group by yhdm;
===================================
报错:
ORA-32401: "P_USER" 上的实体化视图日志没有新值
什么原因?如何纠正?谢谢!
解决方案 »
- 求助 推荐ORA书籍
- 安装oracle 10g Configuration Assistant "Oracle Net Configuration Assistant" 失败
- 关于merge
- 把另一台机的硬盘上oracle整个目录都copy到我本机上,两台机都装的是oracle9i,现在我想在我本机上恢复那台机的数据,请问有什么方法?
- LONG RAW转存为BLOB遇到的问题
- 有没有方法在不知道列类型和数量的情况下插入一行?
- oracle错误 错误600
- 字符集、备份问题
- 大数据量的提交!
- user_view视图的问题
- 我的查询结果中有一些记录完全相同,怎样取其中一条?
- 求一个行列置换的头疼SQL
DROP materialized view log on p_user;
create materialized view log on p_BANK with rowid (yhdm) including new values;
create materialized view log on p_user with rowid (area) including new values;
create materialized view MV_bank_user
TABLESPACE MV_DATA
BUILD DEFERRED
refresh fast
on demand
start with SYSDATE
next SYSDATE +10
with rowid
as
select yhdm,count(*) num from p_bank,p_user
where scbz=1
and yhdm=area
group by yhdm;
试了你的代码,还是出错
ORA-12033: 不能使用 "P_BANK" 上实体化视图日志中的过滤器列
CREATE TABLE WGH.P_BANK
(
YHDM VARCHAR2(11 BYTE) NOT NULL,
YHMC VARCHAR2(30 BYTE) NOT NULL,
SCBZ VARCHAR2(1 BYTE) DEFAULT '0'
)CREATE TABLE WGH.P_SITENO
(
ZONENO VARCHAR2(5 BYTE),
BRNO VARCHAR2(5 BYTE),
MBRNO VARCHAR2(5 BYTE),
NOTES VARCHAR2(40 BYTE),
BRTYPE VARCHAR2(1 BYTE),
BRCODE VARCHAR2(10 BYTE)
)
(
USERID VARCHAR2(22 BYTE),
CERTID VARCHAR2(12 BYTE) NOT NULL,
STAFFNAME VARCHAR2(20 BYTE) NOT NULL,
PASSWORD VARCHAR2(20 BYTE) NOT NULL,
ADMINSIGN NUMBER(1) NOT NULL,
RIGHT NUMBER(2) NOT NULL,
CONFIRMSIGN NUMBER(1) NOT NULL,
AREA VARCHAR2(10 BYTE) NOT NULL,
UNITNAME VARCHAR2(30 BYTE) NOT NULL,
MAJOR VARCHAR2(200 BYTE),
OPTIONAL CHAR(10 BYTE),
MAXNUM INTEGER NOT NULL,
INTERVALTIMES INTEGER,
QUERYOUTTIMES INTEGER,
MAXPROCESSNUM INTEGER,
NUM1 INTEGER,
NUM2 INTEGER,
NUM3 INTEGER,
IP VARCHAR2(80 BYTE),
KIND VARCHAR2(2 BYTE)
)-------------
CREATE TABLE P_BANK
(
YHDM VARCHAR2(11 BYTE) NOT NULL,
YHMC VARCHAR2(30 BYTE) NOT NULL,
SCBZ VARCHAR2(1 BYTE) DEFAULT '0'
)
DROP materialized view log on p_BANK;
DROP materialized view log on p_user;
create materialized view log on p_BANK with rowid (yhdm,scbz) including new values;
create materialized view log on p_user with rowid (area) including new values;
DROP MATERIALIZED VIEW mv_bank_user;create materialized view MV_bank_user
TABLESPACE MV_DATA
BUILD DEFERRED
refresh fast
on demand
start with SYSDATE
next SYSDATE +10
with rowid
as
select a.yhdm,count(*) num from p_bank a,p_user b
where a.scbz=1
and a.yhdm=b.area
group by a.yhdm;