Oracle - VIEW 를 생성할 때 지정하는 FORCE / NOFORCE 옵션
Posted 08 1, 2010 12:48, Filed under: DataBase/Oracle
# 한번의 광고 클릭으로, 당신을 대신해서 불우이웃을 도울 기회가 많아집니다.
- 뷰를 생성하는 경우에 일반적으로 기본 테이블이 존재한다는 가정하에서 쿼리문을 작성합니다. 극히 드물기는 하지만, 기본 테이블이 존재하지 않는 경우에도 뷰를 생성할 수 잇는데 이때에는 FORCE 옵션이 지정되어 있어야 합니다. 특별한 설정이 없으면 NOFORCE 옵션이 지정된 것이므로 반드시 존재하는 기본 테이블을 이용한 쿼리문으로 뷰를 생성해야 합니다.
참고 자료 : 클릭하세요. 오라클 10g + PL/SQL 입문
SQL> DESC EMPLOYEES;
ERROR:
ORA-04043: object EMPLOYEES does not exist
SQL> CREATE OR REPLACE VIEW VIEW_EMPLOYEES
2 AS
3 SELECT *
4 FROM EMPLOYEES;
FROM EMPLOYEES
*
ERROR at line 4:
ORA-00942: table or view does not exist
SQL> CREATE OR REPLACE FORCE VIEW VIEW_EMPLOYEES
2 AS
3 SELECT *
4 FROM EMPLOYEES;
Warning: View created with compilation errors.
-- 경고는 발생하지만 뷰가 생성되었다는 메시지를 출력합니다.
-- 생성된 뷰를 데이터 딕셔너리인 USER_VIEWS를 통해서 검색할수 있습니다.
SQL> SELECT VIEW_NAME, TEXT FROM USER_VIEWS;
VIEW_NAME TEXT
------------------------- ------------------------------------
VIEW_EMPLOYEES SELECT *
FROM EMPLOYEES
--------------------------------------------------------------
CHECK_OPTION SELECT empno, ename, deptno, job
FROM emp_test3
WHERE deptno = 10
SQL>
ERROR:
ORA-04043: object EMPLOYEES does not exist
SQL> CREATE OR REPLACE VIEW VIEW_EMPLOYEES
2 AS
3 SELECT *
4 FROM EMPLOYEES;
FROM EMPLOYEES
*
ERROR at line 4:
ORA-00942: table or view does not exist
SQL> CREATE OR REPLACE FORCE VIEW VIEW_EMPLOYEES
2 AS
3 SELECT *
4 FROM EMPLOYEES;
Warning: View created with compilation errors.
-- 경고는 발생하지만 뷰가 생성되었다는 메시지를 출력합니다.
-- 생성된 뷰를 데이터 딕셔너리인 USER_VIEWS를 통해서 검색할수 있습니다.
SQL> SELECT VIEW_NAME, TEXT FROM USER_VIEWS;
VIEW_NAME TEXT
------------------------- ------------------------------------
VIEW_EMPLOYEES SELECT *
FROM EMPLOYEES
--------------------------------------------------------------
CHECK_OPTION SELECT empno, ename, deptno, job
FROM emp_test3
WHERE deptno = 10
SQL>
참고 자료 : 클릭하세요. 오라클 10g + PL/SQL 입문
"DataBase / Oracle" 분류의 다른 글
| Oracle - SYS_CONTEXT 함수를 이용하여 접속 세션 정보 추출 (2) | 2011/12/13 |
| Oracle - ASSM(Automatic Segment Space Management) (0) | 2011/09/18 |
| Oracle - 사용자의 테이블 스페이스 검색및 이동 (0) | 2011/09/18 |
| Oracle - 9i 설치관련 패치(Requirements for Installing Oracle 9iR2 on RHEL 4) (0) | 2011/09/01 |
| Oracle - 삭제된 데이타 복구하기 (0) | 2011/08/04 |
| Oracle - SQL문으로 oracle alert 로그 확인 (0) | 2011/06/21 |
| Oracle - Export, Import (0) | 2011/05/29 |
| Oracle - Control File 파일 장애 복구 (0) | 2011/05/15 |
| Oracle - 사용자 관리. (0) | 2011/05/07 |
| Oracle - ORA-01157, ORA-01110 테이블 스페이스 에러 (0) | 2011/05/01 |
# 한번의 광고 클릭으로, 당신을 대신해서 불우이웃을 도울 기회가 많아집니다.
Response :
0 Trackback
,
0 Comment
Trackback URL : http://develop.sunshiny.co.kr/trackback/533