2013-12-11 51 views
3

我有以下類型:物化視圖與嵌套表

create or replace type varchar2_arr as table of varchar2(300) 

我嘗試創建物化視圖:

create table a (id varchar2(10), data varchar2(200), constraint pk_a primary key(id)); 
create table b (id varchar2(10), data varchar2(200), constraint pk_b primary key(id)); 

create materialized view log on a with rowid; 
create materialized view log on b with rowid; 

create materialized view mnest_ab_mv 
refresh fast on commit 
as 
select a.rowid a_rowid, b.rowid b_rowid, varchar2_arr(a.data), b.data 
from a, b 
where a.id = b.id (+) 

甲骨文給了我以下錯誤:

ORA-12054: cannot set the ON COMMIT refresh attribute for the materialized view 

什麼我需要做一個嵌套表創建物化視圖?

+1

你是如何建立的嵌套表是這個原因嗎? –

+0

@DavidAldridge,因爲當我刪除'varchar2_arr(a.data)'列物化視圖被創建成功 –

+0

@michaelnesterenko您的CREATE代碼部分已損壞。請更新它。 –

回答

1

您是否嘗試過運行DBMS_MVIEW.EXPLAIN_MVIEW過程,其輸出可能有所幫助。

感謝

Vishad