728x90
테이블의 칼럼 위치를 수정해야 하는 업무가 있었다.
하지만 다 날리고 다시 박아넣는 것 말고 다른 방법이 있지 않을까 하는 생각이 들었다.
칼럼을 날리고 다시 넣으면 백업될때 컬럼명과 사이즈만 복제되고 테이블의 PK, INDEX나 COMMENT 등은 백업되지 않지만
INVISIBLE-VISIBLE을 사용하면 쉽게 칼럼간 순서를 변경할 수 있다.
예를 들어 TB 테이블에서 A B C D E 순으로 되어있는 칼럼을
A B E C D로 변경하려 한다고 하자.
-- 뒤로 옮길 컬럼을 순서대로 INVISIBLE 한다.
ALTER TABLE TB MODIFY (C INVISIBLE);
ALTER TABLE TB MODIFY (D INVISIBLE);
-- 뒤로 옮길 컬럼을 순서대로 VISIBLE 한다.
ALTER TABLE TB MODIFY (C VISIBLE);
ALTER TABLE TB MODIFY (D VISIBLE);
위와 같이 C와 D를 INVISIBLE에서 다시 VISIBLE로 하면 그 다음으로 붙는다.
참고
'Database > 🅾 Oracle' 카테고리의 다른 글
VARCHAR형으로 저장된 날짜와 현재 날짜의 차이 구하기 [SQL / Oracle / myBatis] (2) | 2022.07.18 |
---|
댓글