DBMS/oracle

[oracle] 테이블 제약조건, 컬럼 수정 및 삭제

도하루박 2022. 9. 2. 01:23
반응형

테이블에 생성된 제약조건과 컬럼들을 수정, 삭제할 수 있는 방법들이다.

CREATE TABLE TBL_ORDER(
ORDER_NUMBER NUMBER,
ORDER_NAME VARCHAR2(1000),
ORDER_AGE NUMBER,
ORDER_ID VARCHAR2(1000)
);
/*제약조건 추가 PK*/
ALTER TABLE TBL_ORDER ADD CONSTRAINT PK_ORDER PRIMARY KEY(ORDER_NUMBER);
/*제약조건 삭제*/
ALTER TABLE TBL_ORDER DROP CONSTRAINT PK_ORDER;
/*컬럼 추가(성별)*/
ALTER TABLE TBL_ORDER ADD  (ORDER_GENDER CHAR(1));
/*컬럼 이름 수정*/
ALTER TABLE TBL_ORDER RENAME COLUMN ORDER_NAME TO ORDER_NICKNAME;
/*컬럼삭제*/
ALTER TABLE TBL_ORDER DROP COLUMN ORDER_AGE;
/*컬럼 수정(자료형 변환)*/
ALTER TABLE TBL_ORDER MODIFY(ORDER_NUMBER VARCHAR2(1000));

 

 

성별에서 M 또는 W 하나만 들어와야 하므로 NULL이 들어오지 않고 성별 선택을 하지 않았을 때 자동으로 W가 되게 하는 방법으로는

ORDER_GENDER CHAR(1) DEFAULT 'W' NOT NULL CONSTRAINT BAN_CHAR CHECK(ORDER_GENDER = 'M' OR ORDER_GENDER = 'W'),

CHECK() 는 검사를 하는 것으로 안에 조건을 입력한다. 

반응형