본문 바로가기

Oracle/admin

Mview 마스터테이블 ,Mview Table 컬럼사이즈 check SQL

--mview source,target 컬럼비교 한방(원격지 DB LINK 사용)

--Mview 테이블의 컬럼사이즈가 마스터 테이블보다 작은경우 create 시 에러 발생

(preserve, Prebuilt 옵션 사용시)
select a.owner S_Owner,a.table_name S_TAB,d.column_name S_COL,d.data_type S_Data_Type,d.data_length S_Data_Length ,
       b.owner T_Owner,b.table_name T_TAB,e.column_name T_COL,e.data_type T_Data_Type,e.data_length T_Data_Length ,
       'alter table '||b.owner||'.'||b.table_name||' modify('||e.column_name||' '||e.data_type||'('||d.data_length||'));' Script
from sys.snap$ c,

 dba_tables@db_link a,

 dba_tables b,

 dba_tab_columns@db_link d,

 dba_tab_columns e
where  c.mowner = a.owner
and c.master = a.table_name
and c.sowner = b.owner 
and c.tname = b.table_name
and c.mowner = d.owner
and c.master = d.table_name
and c.sowner = e.owner
and c.tname = e.table_name
and d.column_name = e.column_name
and d.data_length > e.data_length
;

 

 

'Oracle > admin' 카테고리의 다른 글

Mlog 삭제 아키텍처  (0) 2017.03.12
Metadata DDL 추출  (0) 2017.03.12
UTL_MAIL  (0) 2017.02.26
DBMS_SMTP  (0) 2017.02.26
Mview log 관리  (0) 2017.02.23