DDL이란?
DDL(Data Definition Language)은 데이터 정의어로 테이블 조작 및 제어 관련 쿼리문이다.
종류로는 CREATE, ALTER, RENAME, TRUNCATE, DROP이 있다.
명령어를 수행하자마자 자동 COMMIT이 되어 바로 반영되는 특성이 있다.
즉, ROLLBACK을 통한 실행 취소가 불가능하여 사용에 주의하여야 한다.
CREATE
- 테이블 생성
CREATE TABLE 테이블명 (
컬럼명1 데이터타입(SIZE) [DEFAULT 기본값] [제약조건],
컬럼명2 데이터타입(SIZE) [DEFAULT 기본값] [제약조건],
컬럼명3 데이터타입(SIZE) [DEFAULT 기본값] [제약조건]
);
CREATE TABLE TBL_CAR(
ID NUMBER,
BRAND VARCHAR2(100),
COLOR VARCHAR2(100),
CONSTRAINT CAR_PK PRIMARY KEY(ID)
);
3개의 칼럼(ID, BRAND, COLOR)을 가진 TBL_CAR 테이블을 생성했다.
기본키(PK)는 ID 칼럼으로 설정하였다.
ALTER
- 칼럼 추가
ALTER TABLE 테이블명 ADD 칼럼명 데이터타입;
ALTER TABLE TBL_CAR ADD PRICE NUMBER;
- 칼럼 삭제
ALTER TABLE 테이블명 DROP COLUMN 칼럼명;
ALTER TABLE TBL_CAR DROP COLUMN PRICE;
- 칼럼 정의 변경
ALTER TABLE 테이블명
MODIFY (
칼럼명1 [데이터타입] [DEFAULT 값] [NOT NULL],
칼럼명2 [데이터타입] [DEFAULT 값] [NOT NULL]
);
ALTER TABLE TBL_CAR MODIFY (COLOR DEFAULT 'RED' NOT NULL);
- 칼럼명 변경
ALTER TABLE 테이블명 RENAME COLUMN 기존칼럼명 TO 변경칼럼명;
ALTER TABLE TBL_CAR RENAME COLUMN COLOR TO NEW_COLOR;
- 제약조건 삭제
ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건명;
ALTER TABLE TBL_CAR DROP CONSTRAINT CAR_PK;
- 제약조건 추가
ALTER TABLE 테이블명 ADD CONSTRAINT 제약조건명 제약조건 (칼럼명);
ALTER TABLE TBL_CAR ADD CONSTRAINT CAR_PK2 PRIMARY KEY(ID);
RENAME
- 테이블명 변경
RENAME 기존테이블명 TO 변경테이블명;
RENAME TBL_CAR TO TBL_CAR2;
TRUNCATE
- 테이블의 모든 데이터 삭제
TRUCATE TABLE 테이블명;
SELECT * FROM TBL_CAR2;
DROP
- 테이블 삭제
DROP TABLE 테이블명;
DROP TABLE TBL_CAR2;
DROP 명령어를 실행하려고 하면 다음과 같이 경고창이 뜬다.
테이블에 저장된 데이터가 함께 삭제되기 때문에 주의해야 한다.
오라클 10g부터는 FLASHBACK 기능을 이용해서 복구할 수 있지만
우리는 DROP 명령어를 이제부터 없다 생각하고 잊어버리도록 하자!!
'DB > 오라클(Oracle)' 카테고리의 다른 글
[Oracle] 오라클 별칭(AS) 사용법 (0) | 2023.11.23 |
---|---|
오라클 TCL(COMMIT, ROLLBACK, SAVEPOINT) (0) | 2023.11.21 |
오라클 DML(INSERT, SELECT, UPDATE, DELETE) (2) | 2023.11.20 |
오라클 테이블 생성(CREATE TABLE, CONSTRAINT, COMMENT) (0) | 2023.11.09 |
오라클 데이터타입(Data Type) 정리 (0) | 2023.11.05 |