현재 사용중인 테이블의 스키마를 변경하고 싶다면?
MODIFY 연산자를 사용한다.
CREATE TABLE SCOTT.CATEGORIES
(
CATEGORY_ID NUMBER(19) NOT NULL,
CATEGORY_NAME VARCHAR2(40) NOT NULL,
USED NUMBER(1) NOT NULL,
PARENT_CATEGORY_ID NUMBER(19) NOT NULL,
PRIMARY KEY ( CATEGORY_ID )
)
위처럼 생성한 테이블이 있는데, 사용하다보니 CATEGORY_NAME 컬럼의 크기가 너무 작아서
조금 더 늘리고 싶은 경우가 있을 수 있다.
이 경우 테이블을 지우고 다시 생성하는것이 아니라 ALTER TABLE 명령어를 이용하여 간단히 해결할 수 있다.
ALTER TABLE CATEGORIES MODIFY(CATEGORY_NAME VARCHAR2(70));이런식으로 변경한다.
처음에 테이블을 생성할 때 CATEGORY_NAME은 NOT NULL 제약조건이 선언되었으므로
수정할 때에는 따로 명시하지 않는다면 NOT NULL 제약조건은 변경되지 않는다.