시노님 이란?
시노님은 영어로 동의어라는 뜻을 가진다.
시노님은 하나의 객체에 대해 다른 이름을 정의하는 방법이다.
예를 들어, scott 소유의 scott.emp 테이블에 대해 arirnag이라는 동의어를 정의할 경우, 질의어에서 scott.emp라는 긴 이름 대신에 arirang라는 간단한 이름으로 scott.emp 테이블을 조회할 수 있다.
동의어는 SQL 문에서 사용하는 테이블이나 컬럼의 별명과 유사한 개념이다. 하지만 별명은 해당 SQL 문 내에서만 사용할 수 있지만, 시노님은 데이터베이스 전체에서 사용할 수 있는 객체이다.
시노님의 종류
• private 시노님(개인 시노님)는 특정 스키마에서 생성되고 단지 그것을 갖는 스키마에 의해 접근할 수 있다.
• public 시노님(공용 시노님)는 PUBLIC schema에 의해 소유되며 데이터베이스 내의 모든 스키마는 그것을 참조한다.
시노님의 생성
create 문을 사용하여 만든다.
[ 형식 ]
CREATE [PUBLIC] SYNONYM [schema.]synonym명 FOR [schema.]object명;
• 디폴트는 private 시노님이다.
• PUBLIC 시노님은 모든 사용자가 접근 가능한 시노님을 생성한다.
• PUBLIC 시노님은 모든 사용자가 접근 가능하기 때문에 생성 및 삭제는 오직 DBA만이 할 수 있다.
[ 시노님 생성 순서 ]
1) SYSTEM 권한으로 접속한다.
2) PUBLIC 옵션을 사용하여 시노님을 생성한다.
3) 생성된 시노님에 대해 객체 소유자로 접속한다.
4) 시노님에 권한을 부여한다.
시노님의 삭제
• private 시노님은 생성자 스스로 삭제할 수 있다.
• public 시노님은 DBA만이 삭제할 수 있다.(public 시노님 생성과 삭제는 DBA만 가능)
[ 형식 ]
DROP [PUBLIC] SYNONYM synonym명;
시노님 조회
all_synonyms | 모든 시노님 정보 |
user_synonyms | 사용자가 만든 시노님 정보 |
예)
select * from user_synonyms;
'Backend > DB' 카테고리의 다른 글
[DB 이론] 데이터 모델링(Data Modeling)이란? (0) | 2021.12.26 |
---|---|
[ORACLE] 오라클 SQL 만년 달력 만들기 (0) | 2021.11.03 |
[ORACLE] 오라클 SQL 종류 (DDL,DML,DCL) (0) | 2021.11.02 |
[DB모델링툴] eXERD 무료 평가판 다운로드 (0) | 2021.11.02 |
[ORACLE] 오라클 SQL 쿼리 실행, 처리 순서 (0) | 2021.10.31 |