CREATE OR REPLACE SYNONYM

2024. 7. 15. 20:01DB/Oracle

테이블 별칭을 만들어 접근

//동의어 생성 또는 교체

CREATE OR REPLACE SYNONYM synonym_name FOR [schema.]object_name;

//삭제
DROP SYNONYM [schema.]synonym_name;

//동의어를 제거할 때, 그 동의어에 의존하는 객체가 있으면 오류가 발생할 수 있습니다. 이러한 경우 CASCADE 옵션을 사용하여 동의어에 의존하는 객체도 함께 제거할 수 있습니다.
DROP SYNONYM [schema.]synonym_name CASCADE;

//동의어에 의존하는 객체를 확인하려면 다음과 같은 쿼리를 사용할 수 있습니다:
SELECT * FROM ALL_DEPENDENCIES WHERE REFERENCED_NAME = '동의어';

//1. 현재 사용자가 소유한 동의어 조회
SELECT SYNONYM_NAME, TABLE_OWNER, TABLE_NAME, DB_LINK 
FROM USER_SYNONYMS;

//2. 현재 사용자가 접근할 수 있는 모든 동의어 조회
SELECT OWNER, SYNONYM_NAME, TABLE_OWNER, TABLE_NAME, DB_LINK 
FROM ALL_SYNONYMS;

//3. 데이터베이스 내의 모든 동의어 조회 (관리자 권한 필요)
SELECT OWNER, SYNONYM_NAME, TABLE_OWNER, TABLE_NAME, DB_LINK 
FROM DBA_SYNONYMS;