Synonym이란

Programmingzi·2024년 1월 28일

시노님(Synonym)이란?

데이터베이스 객체의 이름에 대한 동의어를 지어주는 것을 뜻한다.
테이블의 alias와 비슷하지만, synonym은 임시적인 별명이 아닌, 영속적인 별명을 부여한다.

  • 보통 다른 유저의 객체(테이블, 뷰, 시퀀스 등)을 참조할 때 많이 사용한다.

장점

  • 다른 유저의 객체를 사용할 때, 객체의 실제 이름을 감춤으로써 보안성을 높이고, 편리하게 사용할 수 있다.

예를 들어, user2이 user1이 생성한 employee 테이블에 접근할 때는 다음과 같이 유저명과 테이블명을 사용해야 한다.

select *
from user1.employee;

여기서 synonym을 사용한다면, 테이블명으로만 접근이 가능하다.

시노님(Synonym) 생성

CREATE [PUBLIC] SYNONYM 시노님 이름 
FOR 객체이름
  • PUBLIC은 모든 사용자가 접근이 가능하도록 설정해주는 것 (default는 private임)

예시로 synonym을 만들어보자.

CREATE PUBLIC SYNONYM EMPLOYEE FROM USER1.EMPLOYEE;

이렇게 시노님을 생성해주면, user2는 employee로 테이블 접근이 가능하다.

시노님(Synonym) 조회

SELECT * FROM ALL_SYNONYMS;

시노님(Synonym) 삭제

DELETE SYNONYM EMPLOYEE;

참고
https://24hours-beginner.tistory.com/249

0개의 댓글