ALTER / DROP
ALTER : 테이블에 정의된 내용을 수정할 때 사용하는 데이터 정의어
DROP : 데이터베이스 객체를 삭제하는 구문
추가
- ALTER TABLE 테이블명 ADD (컬럼명 자료형(자료형크기));
1
2
3
|
ALTER TABLE DEPT_COPY
ADD (CNAME VARCHAR2(20));
|
- DEFALUT값 지정
- ALTER TABLE 테이블명 ADD (컬럼명 자료형(자료형크기) DEFAULT '값');
1
2
3
|
ALTER TABLE DEPT_COPY
ADD (LNAME VARCHAR2(40) DEFAULT '한국');
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
수정
1
2
3
4
5
6
7
|
ALTER TABLE DEPT_COPY
MODIFY DEPT_ID CHAR(3)
MODIFY DEPT_TITLE VARCHAR2(30)
MODIFY LOCATION_ID VARCHAR2(2)
MODIFY CNAME CHAR(20)
MODIFY LNAME DEFAULT '미국';
|
- 디폴트값은 설정한 뒤,들어갈 값부터 바뀐다. (이미 들어간 값은 안바뀜)
- 수정 시 데이터가 자료형 크기가 넘어가는 값이 존재하면 오류
삭제
1
2
3
4
5
6
|
ALTER TABLE DEPT_COPY2
DROP COLUMN DEPT_ID;
ALTER TABLE DEPT_COPY2
DROP COLUMN LOCATION_ID;
|
- 열(COLUMN)을 다 삭제할 수는 없다.(최소 1개)
1
2
3
4
5
6
|
ALTER TABLE TB1
DROP COLUMN PK1 CASCADE CONSTRAINTS;
ALTER TABLE TB2
DROP COLUMN PK2 CASCADE CONSTRAINTS;
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
- 제약조건을 같이 삭제함.
변경
컬럼 변경
1
2
3
|
ALTER TABLE DEPT_COPY
RENAME COLUMN DEPT_TITLE TO DEPT_NAME;
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
제약 조건 이름 변경
1
2
3
4
5
6
7
8
9
10
11
12
|
ALTER TABLE USER_FOREIGNKEY
RENAME CONSTRAINT SYS_C007136 TO UF_UP_NN;
ALTER TABLE USER_FOREIGNKEY
RENAME CONSTRAINT SYS_C007137 TO UF_UN_PK;
ALTER TABLE USER_FOREIGNKEY
RENAME CONSTRAINT SYS_C007138 TO UF_UI_UQ;
ALTER TABLE USER_FOREIGNKEY
RENAME CONSTRAINT FK_GRADE_CODE TO UF_GC_FK;
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
- RENAME CONSTRAINT 제약조건명 TO 지정하고 싶은 제약조건명
테이블명 변경
1
2
3
|
ALTER TABLE DEPT_COPY
RENAME TO DEPT_TEST;
|
테이블 삭제
1
2
3
|
DROP TABLE DEPT_TEST
CASCADE CONSTRAINTS;
|