* 모든 쿼리는 oracle을 기준으로 작성하였습니다.
* SQL 전문가 가이드 책을 보며 공부하고 작성하였습니다.
ALTER TABLE
테이블에 도중에 칼럼을 추가/삭제하거나 제약조건을 추가/삭제하는 작업을 진행할 때 사용한다.
ADD COLUMN
테이블에 새로운 칼럼을 추가합니다.
새롭게 추가된 칼럼은 테이블의 마지막 칼럼이 되며 칼럼의 위치는 지정할 수 없습니다.
구문
ALTER TABLE 테이블명
ADD 추가할 칼럼명 데이터 유형;
예제 쿼리
PLAYER 테이블에 ADDRESS(데이터 유형은 가변 문자로 자릿수 80자리로 설정) 칼럼을 추가.
ALTER TABLE PLAYER
ADD (ADDRESS VARCHAR2(80));
DROP COLUMN
테이블에서 필요 없는 칼럼을 삭제 할 수 있습니다.
구문
ALTER TABLE 테이블명
DROP COLUMN 삭제할 칼럼명;
예제 쿼리
PLAYER 테이블에 새롭게 추가한 ADDRESS 칼럼을 삭제.
ALTER TABLE PLAYER
DROP COLUMN ADDRESS;
MODIFY COLUMN
테이블의 칼럼에 대한 정의를 변경하는 명령입니다.
구문
ALTER TABLE 테이블명
MODIFY (칼럼명1 데이터유형 [DEFAULT 식] [NOT NULL]);
예제 쿼리
TEAM 테이블의 ORIG_YYYY 칼럼의 데이터 유형을 VARCHAR2(8)로 변경하고,
향후 입력되는 데이터의 DEFAULT 값으로 '20020129'를 적용하고,
모든 행의 ORIG_YYYY 칼럼에 NULL이 없으므로 제약조건을 NOT NULL로 변경.
ALTER TABLE TEAM
MODIFY (ORIG_YYYY VARCHAR2(8) DEFAULT '20020129' NOT NULL);
RENAME COLUMN
구문
ALTER TABLE 테이블명
RENAME COLUMN 변경해야 할 칼럼명 TO 새로운 칼럼명;
DROP CONSTRAINT
제약조건을 삭제하는 명령어입니다.
구문
ALTER TABLE 테이블명
DROP CONSTRAINT 제약조건명;
예제 쿼리
PLAYER 테이블의 외래키 제약조건을 삭제.
ALTER TABLE PLAYER
DROP CONSTRAINT PLAYER_FK;
ADD CONSTRAINT
제약조건을 추가합니다.
구문
ALTER TABLE 테이블명
ADD CONSTRAINT 제약조건명 제약조건 (칼럼명);
예제 쿼리
PLAYER 테이블에 TEAM 테이블과의 외래키 제약조건을 추가.
제약조건명은 PLAYER_FK로 하고,
PLAYER 테이블의 TEAM_ID 칼럼이 TEAM 테이블의 TEAM_ID를 참조하는 조건.
ALTER TABLE PLAYER
ADD CONSTRAINT PALYER_FK FOREIGN KEY (TEAM_ID) REFERENCES TEAM(TEAM_ID);
'데이터베이스 > SQLD' 카테고리의 다른 글
[TCL] 트랜잭션 (0) | 2020.06.07 |
---|---|
[DML] INSERT, UPDATE, SELECT (0) | 2020.06.07 |
[DDL] CREATE TABLE (0) | 2020.06.07 |
데이터 유형 (CHAR, VARCHAR, NUMERIC, DATE) (0) | 2020.06.07 |
관계형 데이터베이스, SQL, TABLE (0) | 2020.06.07 |