반응형
VIEW의 RENAME을 하다가 방법을 글로 작성합니다.
해당 방법은 자기 소유의 OBJECT 중 TABLE이 아닌 OBJECT에서 사용가능합니다.
사용방법은 아래와 같습니다.
RENAME OLD_NAME TO NEW_NAME;
1.뷰생성 후 RENAME TEST
1.뷰생성
CREATE OR REPLACE VIEW YSBAE.YSBAE_VI_EMP
(
ENO,
DEPTNO,
COMM,
SAL,
MGR,
JOB
)
AS
select "ENO","DEPTNO","COMM","SAL","MGR","JOB" from dev.emp;
2.확인
SQL> select * from tab;
TNAME TABTYPE
--------- ----------
EMP TABLE
YSBAE_VI_EMP VIEW
3.RENAME
SQL> rename YSBAE_VI_EMP to YSBAE_VI_EMP2;
Table renamed.
4.재확인
YSBAE@dbarac1 SQL> select * from tab;
TNAME TABTYPE
--------- ----------
EMP TABLE
YSBAE_VI_EMP2 VIEW
2.다른 스키마에서 VIEW RENAME 시도(에러 발생)
DEV 유저에서 수행
SQL> rename YSBAE.YSBAE_VI_EMP2 to YSBAE_VI_EMP3;
rename YSBAE.YSBAE_VI_EMP2 to YSBAE_VI_EMP3
*
ERROR at line 1:
ORA-01765: specifying owner's name of the table is not allowed
SQL> rename YSBAE.YSBAE_VI_EMP2 to YSBAE.YSBAE_VI_EMP3;
rename YSBAE.YSBAE_VI_EMP2 to YSBAE.YSBAE_VI_EMP3
*
ERROR at line 1:
ORA-01765: specifying owner's name of the table is not allowed
3.다른 스키마에서 current_user로 세션을 변경 후 시도(에러발생)
SQL> alter session set current_schema=YSBAE;
Session altered.
SQL> rename YSBAE_VI_EMP2 to YSBAE_VI_EMP3;
rename YSBAE_VI_EMP2 to YSBAE_VI_EMP3
*
ERROR at line 1:
ORA-03001: unimplemented feature
같은 스키마내의 object만 가능합니다.
반응형
'Oracle > 운영' 카테고리의 다른 글
[SQL 성능 체크 tool]SQLHC 와 SQLT (2) | 2022.09.23 |
---|---|
다른 세션에서 10046 trace 수행하기 (0) | 2022.09.06 |
move tablespace parallel 옵션 사용 (0) | 2022.08.22 |
Online Redefinition시 Block 감소량 비교 (0) | 2022.08.16 |
Table Reorg 방법 정리 (0) | 2022.08.12 |
댓글