ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SQL 단순 VIEW 검색 & VIEW가 실행되지 않는 경우
    Data Base_Oracle/SQL 2020. 1. 8. 23:53

    단순 VIEW 실행_검색

    § 형식

    [ SQL> select ,,,, from 뷰이름 where 조건식 ,,,, ; ]

    # 예제

    ▷ emp 테이블에서 20번 부서에 근무하는 사원의
    사번, 이름, 업무를 검색할 수 있는 v_emp20 뷰 조회

    ▶ [ SQL> select * from v_emp20; ]

    EMPNO ENAME JOB
    7369 SMITH CLERK
    7566 JONES MANAGER
    ... ... ...

    ※ VIEW가 실행되지 않는 경우

    VIEW를 만들 때 참조한 기본테이블의 구조에 문제가 발생했을 때

    ▷ b_emp3 테이블에서 이름이 A로 시작하는 사원의 사원번호, 이름을 갖는 VIEW생성
    [ SQL> create view emp_name as select empno,ename
    from b_emp3 where ename like 'A%';
    뷰가 생성되었습니다.
    select * from emp_name; ]

    EMPNO ENAME
    7499 ALLEN
    7876 ADAMS

    → Oracle에서 특정 테이블의 필드를 사용하지 못하게 설정

    § 형식

    [ SQL> alter table table명 set unused column 필드명; ]

    # 예제

    ▷ b_emp3 테이블의 ename 필드를 사용하지 못하게 변경

    ▶ [ SQL> alter table b_emp3 set unused column ename;
    테이블이 변경되었습니다.
    desc b_emp3 ]

    이름 널? 유형
         
    ... ... ...

    ※ ENAME 필드가 사라짐, DDL명령어는 rollback 불가, 원본 테이블에 사용 X

     

      [ SQL> select * from emp_name;
    1행에 오류:
    ORA-04063: view "SCOTT.EMP_NAME"에 오류가 있습니다 ]

    ※ 기본테이블의 필드에 문제가 발생되거나 테이블이 삭제됐을 때 발생하는 에러


    VIEW 자체가 가상 테이블이기 때문에 검색 방법은 테이블 검색 방법과 동일하다고 할 수 있습니다.
    기본 테이블이 손상되면 VIEW 역시 검색이 제한되기 때문에 데이터는 언제나 신중하게 다뤄야 합니다.

    'Data Base_Oracle > SQL' 카테고리의 다른 글

    SQL 단순 VIEW_그룹 함수 사용  (0) 2020.01.09
    SQL 단순 VIEW 수정 & 삭제  (0) 2020.01.09
    SQL 단순 VIEW 생성  (0) 2020.01.08
    SQL_VIEW 개요 & USER_VIEWS  (0) 2020.01.08
    SQL 집합 연산자  (0) 2020.01.08

    댓글

Designed by Tistory.