반응형
한줄요약
ALTER TABLE [변경전 테이블명] RENAME TO [변경 후 테이블명];
-- 사용예)
ALTER TABLE TEST_TBL1 RENAME TO TEST_TBL1_BAK;
주의사항
제가 개발하고 있는 환경에서는 TABLE RENAME을 하더라도 RENAME된 테이블의 INDEX는 유지 되지만,
다른 인터넷에서의 사례를 보면, RENAME후 INDEX가 걸리지 않는 경우도 있는것으로 보입니다.
아래 쿼리를 사용하여 RENAME후에도 인덱스가 걸린채로 유지되는지 확인해보도록 하는게 좋을것 같습니다.
SELECT a.table_name
, a.index_name
, a.column_name
FROM all_ind_columns a
WHERE a.table_name = '[테이블명]'
ORDER BY a.index_name
, a.column_position;
위 쿼리를 실행하면, 아래와 같은 형식으로 출력이 됩니다.
TABLE_NAME | INDEX_NAME | COLUMN_NAME |
---|---|---|
TBL1 | IX1 | COL1 |
RENAME 활용처
원본 테이블 tbl이 있을때,
tbl_bak 으로 백업db를 만들어서 insert into tbl1_bak select * from tbl 과 같이 데이터를 백업해두고,
원본 테이블이 tbl의 데이터가 손상이 되었을때 tbl1_bak 테이블을 tbl로 rename하여 데이터 원복을 수행할 수 있습니다.
728x90
반응형
'개발팁' 카테고리의 다른 글
오라클 권한관련 분석 쿼리, 오브젝트 (테이블, 시퀀스, 스케쥴러, 프로시저 등)확인 쿼리 (0) | 2025.03.19 |
---|---|
Windows윈도우 10 컴퓨터 속도 최적화하는 10가지 방법 (0) | 2025.02.12 |
docker 디버깅시 유용한 명령어들 (1) | 2024.12.15 |
Windows에서 확장자별 파일 갯수 확인 (PowerShell) (0) | 2024.11.22 |
IIS - w3wp.exe 메모리 부족에 대한 해결방안, 메모리제한 (0) | 2024.11.07 |
댓글