[ORACLE]오라클 Alter table

2012. 4. 29. 22:34NOTE/IT

오라클 Alter table

http://blog.naver.com/itisksc?Redirect=Log&logNo=30045778960

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',
                   컬럼2 NUMBER(08)    DEFAULT 0);
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> ALTER TABLE 테이블 DEALLOCATE UNUSED;

9. 여러 테이블에서 사용하는 컬럼의 길이를 변경하고자 할 경우
SQL> SELECT  'ALTER TABLE '||TABLE_NAME||' MODIFY ('||COLUMN_NAME||' '||DATA_TYPE||'(7));'
       FROM  USER_TAB_COLUMNS
      WHERE  COLUMN_NAME LIKE '%컬럼%'; 

'NOTE > IT' 카테고리의 다른 글

[ORACLE] 함수 정리  (0) 2012.04.29
[JAVA]package와 import  (0) 2012.04.29
[포토샾] 간락 팁  (0) 2012.04.29
[ASP]파일 다루기  (0) 2012.04.25
[VB] .INI 사용  (0) 2012.04.25