programing

Oracle 테이블 또는 보기 이름 변경

starjava 2023. 2. 26. 08:40
반응형

Oracle 테이블 또는 보기 이름 변경

Oracle에서 테이블 또는 뷰의 이름을 변경하는 구문은 무엇입니까?

ALTER TABLE mytable RENAME TO othertable

Oracle 10g또, 다음과 같습니다.

RENAME mytable TO othertable

테이블 이름을 변경하려면 다음을 사용합니다.

RENAME mytable TO othertable;

또는

ALTER TABLE mytable RENAME TO othertable;

또는 다른 스키마가 소유하고 있는 경우:

ALTER TABLE owner.mytable RENAME TO othertable;

흥미롭게도 ALTER VIEW는 뷰 이름을 변경할 수 없습니다.단, 다음 작업을 수행할 수 있습니다.

RENAME myview TO otherview;

RENAME 명령은 테이블, 뷰, 시퀀스 및 개인 동의어에 대해서만 작동합니다.

보기가 스키마에 없는 경우 보기를 새 이름으로 다시 컴파일한 다음 이전 보기를 삭제할 수 있습니다.

(Oracle 10g에서 테스트 완료)

다른 스키마에서 테이블의 이름을 변경하려면 다음 작업을 수행합니다.

ALTER TABLE owner.mytable RENAME TO othertable;

rename 명령어(「」와 같이)rename mytable to othertable)는 같은 스키마 내의 테이블 이름 변경만 지원합니다.

인덱스 이름도 같은 방법으로 변경할 수 있습니다.

alter index owner.index_name rename to new_name;

10g이 지나면 현재 답변은 뷰 이름 변경에 더 이상 사용할 수 없습니다.여전히 작동하는 유일한 방법은 보기를 삭제하고 다시 만드는 것입니다.이를 위해 생각할 수 있는 최선의 방법은 다음과 같습니다.

소유자='some_views' 및 VIEW_NAME='some_views'에서 텍스트를 모두 선택합니다.

반환된 SQL 앞에 추가

뷰 some_schema.new_view_name을 생성 또는 바꿉니다.

이전 보기를 삭제합니다.

드롭 뷰 some_schema.some_view;

언급URL : https://stackoverflow.com/questions/835387/rename-oracle-table-or-view

반응형