database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 39166 게시물 읽기
No. 39166
프로시져로 view 생성
작성자
박진경
작성일
2011-12-14 10:40
조회수
4,281

PROCEDURE PRC_TEST IS   
BEGIN  
   
    execute immediate
    'drop materialized view MV_TEST;
   
    execute immediate 
    'create materialized view MV_TEST
     refresh complete on demand
     as
     select 'X' from dual';  
EXCEPTION
WHEN OTHERS THEN
RAISE;      
END PRC_TEST;


위와 같이 해서 MV를 생성했습니다.

근데 기존 MV_TEST 가 없을 경우 drop view 시 애러가 발생합니다.

view가 없을 경우 신규 생성, 있을 겨우 drop & create 하고 싶은데 예외처리를 어떻게 해야하나요?

이 글에 대한 댓글이 총 1건 있습니다.

다음과 같이 해보세요.

 

PROCEDURE PRC_TEST IS   

  ln_count number;

BEGIN  

 

    SELECT count(*) INTO ln_count
      FROM user_mviews
      WHERE mview_name = 'MV_TEST';

 

    IF ln_count > 0 THEN    
      execute immediate
       'drop materialized view MV_TEST;

    END IF;    

 

    execute immediate 
    'create materialized view MV_TEST
      refresh complete on demand
      as
      select 'X' from dual';  

 

EXCEPTION
 WHEN OTHERS THEN
 RAISE;      
END PRC_TEST;

hopper(bunny)님이 2011-12-14 14:35에 작성한 댓글입니다.
이 댓글은 2011-12-14 14:37에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
39170listener.log 파일에 service_update 찍히는 현상 [1]
박병준
2011-12-14
6608
39169여러 로우를 한 로우에 표현하는 방법좀 부타 드립니다. [1]
김종태
2011-12-14
3806
39167엔터프라이즈 매니저 11g에서 실행이 안되요 ㅠㅠ
박지현
2011-12-14
3396
39166프로시져로 view 생성 [1]
박진경
2011-12-14
4281
39165연결 리스트 쿼리 작성 문의
김정묵
2011-12-14
3105
39163[질문]dbf 화일이 있습니다. 복구 가능한지요
안동석
2011-12-13
3323
39162패키지 실행 관련 에러 [1]
oracle
2011-12-13
4070
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다