[Oracle] View Table


View 


물리적인 테이블에 근거한 논리적인 가상  테이블? 말이 어렵다..


업무적으로 봤을 때, 다른 계정에서 직접 물리적인 테이블을 조회하면 보안상에 문제(테이블을 그대로 제공하면 테이블의 모든 데이터를 볼 수 있기 때문


에)가 발생할 수 있으므로, 필요한 정보만을 제공할 수 있도록 가상의 테이블을 사용한다고 보면 된다.(개인적인 의견입니다....)


View 테이블을 제공하게 되면 제공하고자 하는 정보만 타시스템에서 볼 수 있기 때문에, 타시스템에서 정보가 더 필요하다고 하면 View에 제공할 컬럼을 


추가해줘야되니, 처음 협의할 때, 필요한 정보를 명확하게 받아두는 것이 번거롭지 않다.



View Table 생성


CREATE OR REPLACE VIEW View_Name AS

[SELECT 문];


**REPLACE : 이미 생성된 VIEW에 수정사항이 발생하는 경우, REPLACE를 사용하면 같은 이름의 VIEW 테이블을 업데이트 한다.



예를 들자면 아래와 같다.


CREATE OR REPLACE VIEW INSA_VIEW AS

SELECT A.NAME, A.TELNO, B.HOMEADRESS

FROM USERINFO A, ADDRESSINFO B

WHERE A.USER_ID = B.USERLINK_ID;




생성하게 되면, 아래와 같이 SELECT 문으로 조회하면 조회가 된다.


SELECT * FROM INSA_VIEW;



단, 다른 계정에서 조회를 하기 위해서는 권한을 부여해주어야 한다.


GRANT SELECT ON VIEW TO USER명;



'IT Info > Oracle' 카테고리의 다른 글

[Oracle] MERGE INTO  (0) 2019.11.20
[Oracle] INSERT, UPDATE, DELETE  (0) 2019.11.20
[Oracle] ORA-00904 : invalid identifier  (0) 2019.11.14
[Oracle] Delete 데이터 복구  (0) 2019.11.13
[Oracle] Single Quotation(홀따옴표) ' Insert  (0) 2019.11.12

+ Recent posts