티스토리 뷰
- 내 계정에서 다른 계정의 특정 테이블을 내 계정에서 볼 때
Alias(별칭)를 정해놓고, 그 테이블을 참조할 때 Alias로 참조한다.
2. SYNONYM의 사용
- ORACLE0904 라는 계정에서 SCOTT 계정의 DEPT(부서테이블)을 보려 한다면,
통상적으로 이렇게 사용한다.
예) SELECT * FROM SCOTT.DEPT
- 하지만, 이렇게 사용한다면, 나중에 SQL문이 길어질 때, SQL문의 복잡함에 한 몫을 더한다는 점과
다른 스키마(여기서는 SCOTT)에 있는 오브젝트(여기서는 DEPT)의 위치를
노출시킨다는 점에서 보안성에도 문제가 있을 수 있다고 한다.
- 그래서 SCOTT.DEPT 라는 부분을 내 계정에서 간단히 줄여 별칭으로 사용하기 위함이 SYNONYM이다.
예를 들어, 별칭....이라...음. 나는 앞으로 SCOTT.DEPT를 'DEPT2'라는 별칭으로 사용하기 위해
내 계정에서 별칭을 정하는 작업을 다음과 같이 한다.
예) CREATE SYNONYM DEPT2 FOR SCOTT.DEPT
- 이렇게 별칭을 설정하여 놓고, SELECT * FROM DEPT2 라는 쿼리를 수행하면,
SELECT * FROM SCOTT.DEPT 쿼리 수행 결과와 결과가 같음을 확인할 수 있다.
쿼리문 길이 및 보안유지에도, 조금이나마 도움이 된다는 취지에서 SYNONYM을 사용한다.
* 만약 ORACLE0904 계정에서 SCOTT 계정의 테이블을 SELECT 할 권한이 없다면,
SCOTT 계정으로 접속하여, 다음과 같이 권한을 주고 작업하면 된다.
예) GRANT SELECT ON DEPT TO ORACLE0904
--> ORACLE0904 계정에게 DEPT
테이블의 SELECT 권한
부여
* 또한 나중에 이 별칭을 사용하지 않게 된다면, 해당 SYNONYM을 다음과 같이 없애줘 버리면 그만이다.
예) DROP SYNONYM DEPT2
참고 : 원글 보기
'Oracle' 카테고리의 다른 글
ORA-01536 space quota exceeded for tablespace TABLESPACE_NM (0) | 2012.02.10 |
---|---|
오라클 사용자 계정권한 부여/회수 (0) | 2012.02.10 |
테이블스페이스를 분리해서 테이블 생성하기 (0) | 2012.01.30 |
오라클 shutdown 옵션 (0) | 2012.01.25 |
오라클 백업스크립트(Windows) (0) | 2012.01.14 |
- Total
- Today
- Yesterday
- 센트레빌아스테리움영등포
- 특별공급
- 트레이더스
- 금강펜테리움더시글로
- 북서울자이폴라리스
- Neo
- 송도자이크리스탈오션
- 청약접수
- 제일풍경채
- 동탄역
- 청약접수현황
- 당첨가점
- 네오
- 자양하늘채베르
- 관악중앙하이츠포레
- e편한세상강일어반브릿지
- QM5
- 힐스테이트광교중앙역퍼스트
- 송도자이더스타
- 분양가
- 현황
- 경쟁률
- 검단신도시
- 커트라인
- 일반공급
- 고덕강일
- 케이카 워런티
- 영백홀
- 동탄2신도시
- 입주자모집공고
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |