데이터베이스

동의어 SYNONYM

야생늑대 2022. 4. 21. 17:32
반응형

동의어란?

  • 동의어(synonym)는 테이블, 뷰, 시퀸스 등 객체 이름 대신 사용할 수 있는 다른 이름을 부여하는 객체이다.
  • 테이블 이름이 너무길어 사용이 불편할 때 좀 더 간단하고 짧은 이름을 하나 더 만들어 주기 위해 사용한다.
  • 보안 목적으로도 많이 사용된다. synonym을 만들어 권한을 사용자에 부여하여 보안을 강화할 수도 있고.
  • 스키마의 위치를 노출하지 않을 수 있다.

동의어 생성

요소 설명
PUBLIC 동의어를 데이터베이스 내 모든 사용자가 사용할 수 있도록 설정. 생략할 경우 동의어를 생성한 사용자만 사용가능(PUBLIC으로 생성되어도 본래 객체의 사용 권한이 있어야 사용 가능) (선택)
동의어 이름 생성할 동의어 이름 (필수)
사용자. 생성할 동의어의 본래 객체 소유자를 지정. 생략할 경우 현재 접속한 사용자로 지정 (선택)
객체이름 동의어를 생성할 대상 객체 이름 (필수)

 

  • 동의어는 SELECT문의 테이블 별칭과 유사하지만, 오라클 데이터베이스에 저장되는 객체이기 때문에  일회성이 아니라는 점에서 차이가 난다.
  • 동의어 생성 역시 권한을 부여해야 하기 때문에 관리자계정에 접속하여 사용할 계정에 동의어 생성 권한을 부여 해줘야한다. PUBLIC SYNONYM 권한도 따로 부여해 주어야 한다.

 

동의어 권한부여

 

동의어 생성

CREATE SYNONYM E
	FOR EMP;

동의어 삭제

DROP SYNONYM E;

※ 동의어를 삭제하면 E동의어로 SELECT를 할 수 없지만  EMP테이블 이름과 데이터에는 아무 영향을 주지 않는다.

반응형

'데이터베이스' 카테고리의 다른 글

오라클 함수 - 숫자함수  (0) 2022.04.28
오라클 함수- 내장 함수 : 단일행 함수  (0) 2022.04.21
시퀸스  (0) 2022.04.21
제약조건 - UNIQUE  (0) 2022.04.20
제약조건 - FOREIGN KEY와 CHECK,DEFAULT  (0) 2022.04.20