IT 자료
오라클 뷰 안에 파라미터 넣기
성곤
2018. 10. 2. 17:09
반응형
오라클 뷰 안에 파라미터 넣기
일단은, 오라클 뷰 안에 파라미터를 넣을 수 없습니다.
하지만, 편법을 사용하면 파라미터를 보낼 수 있습니다.
1 2 3 4 5 6 7 8 9 10 | /* 파라미터를 전송할 FUNCTION을 만들어줍니다. DBeaver에서 안 만들어짐. sql developer나 그 외에서 실행함 */ CREATE OR REPLACE FUNCTION USER1.SET_PARAM (V_PARAM VARCHAR2) RETURN INTEGER AS BEGIN DBMS_APPLICATION_INFO.SET_CLIENT_INFO(V_PARAM); RETURN 1; END SET_PARAM; | cs |
1 2 3 4 5 6 7 8 9 | /* 뷰를 만들어줍니다. */ CREATE VIEW USER1.V_TEST AS SELECT /* 파라미터가 들어갈 곳에 SYS_CONTEXT('USERENV', 'CLIENT_INFO')를 넣어준다.*/ SYS_CONTEXT('USERENV', 'CLIENT_INFO') AS TEST FROM DUAL | cs |
1 2 3 4 5 | /* 뷰를 조회합니다. WHERE절의 SET_PARAM() 부분에 파라미터를 꼭 넣어줘야합니다. */ SELECT * FROM USER1.V_TEST WHERE 1 = SET_PARAM('PARAM_TEST') /* 필수 */ | cs |
끝!
나중에는 DBMS_SESSION.SET_CONTEXT를 사용해봐야겠다.
반응형