[오라클]Alter Table 컬럼 변경 관리
1. 컬럼 추가
SQL> ALTER TABLE 테이블
ADD (컬럼1 VARCHAR2(03) NULL,
컬럼2 NUMBER(05) NULL);
2. 컬럼TYPE 및 LENGTH 변경
SQL> ALTER TABLE 테이블
MODIFY (컬럼1 VARCHAR2(05) NULL,
컬럼2 NUMBER(08) NOT NULL);
3. 컬럼 DEFAULT 변경
SQL> ALTER TABLE 테이블
MODIFY (컬럼1 VARCHAR2(05) DEFAULT 'N' NOT NULL,
컬럼2 NUMBER(08) DEFAULT 0 NOT NULL,
컬럼3 DATE DEFAULT SYSDATE NOT NULL);
4. 컬럼 삭제(8i~)
SQL> ALTER TABLE 테이블 DROP COLUMN 컬럼1; -- 1개 컬럼
SQL> ALTER TABLE 테이블 DROP (컬럼1, 컬럼2); -- 2개 컬럼 이상
5. 사용하지 않는 컬럼으로 표시(8i~)
SQL> ALTER TABLE 테이블 SET UNUSED COLUMN 컬럼1; -- 1개 컬럼
SQL> ALTER TABLE 테이블 SET UNUSED (컬럼1, 컬럼2); -- 2개 컬럼 이상
6. 사용하지 않는 column으로 표시된 컬럼 삭제(8i~)
SQL> ALTER TABLE 테이블 DROP UNUSED COLUMNS CHECKPOINT 1000;
7. 컬럼 RENAME 방법
- ~ 8i : TABLE 재생성
- 9iR1(9.0.1) ~ : DBMS_REDEFINITION을 이용(Bulletin No: 12279 참조)
- 9iR2(9.2.0) ~ : SQL> ALTER TABLE 테이블 RENAME COLUMN old_컬럼 TO new_컬럼;
8. 여러 테이블에서 사용하는 컬럼의 길이를 변경하고자 할 경우
SQL> SELECT 'ALTER TABLE '||TABLE_NAME||' MODIFY ('||COLUMN_NAME||' '||DATA_TYPE||'(7));'
FROM USER_TAB_COLUMNS
WHERE COLUMN_NAME LIKE '%컬럼%';
'01.오라클 > 001.DB 관리' 카테고리의 다른 글
[오라클]log, trc 등 관리 정책 및 쉘 스크립트 (0) | 2012.12.19 |
---|---|
[오라클]Invalid / Disabled 된 오브젝트 관리 (0) | 2012.12.19 |
[오라클]사용자별 오브젝트 갯수 조회 (0) | 2012.12.19 |
[오라클]LOB를 가진 테이블의 관리 (0) | 2012.12.19 |
[오라클]DDL-시퀀스의 LAST값 변경 (0) | 2012.12.19 |