K'some 정보들/자료정리

오라클 SQL- 테이블 DDL (CREATE, ALTER, DROP, RENAME, TRUNCATE 사용)

AwesomeK 2022. 9. 30. 11:35
728x90

DDL은 테이블을 생성하거나, 수정하거나 삭제하는 명령어이다. 

 

 

1. 테이블 생성 (CREATE) 

   - TEST_EMP (임직원), TEST_DEPT(부서) 테이블 생성하기.

 

// 임직원 테이블 생성

CREATE TABLE TEST_EMP (
      EMP_NO  NUMBER(10) PRIMARY KEY,
      ID VARCHAR2(15) NOT NULL,
      NAME VARCHAR(30) ,
      DEPT_NO NUMBER(10)
);

 

//부서 테이블 생성

CREATE TABLE TEST_DEPT (
      DEPT_NO NUMBER(10) PRIMARY KEY,
      DEPT_NM VARCHAR(30),
      TEAM_NM VARCHAR(30)
);

 

2. 테이블 수정 (ALTER, RENAME)

  1). 컬럼생성 (TEST_EMP  테이블에 컬럼 JOIN_DATE 에  DATE 타입으로 생성)

   ALTER TABLE TEST_EMP ADD ( JOIN_DATE DATE );

  

  2). 컬럼 수정 (TEST_EMP  테이블 NAME 컬럼 VARCHAR(50) 으로 변경)

  ALTER TABLE TEST_EMP MODIFY (NAME VARCHAR(50));

 

  3). 컬럼명 변경 (TEST_EMP  테이블 ID컬럼 EMP_ID 로 변경)

  ALTER TABLE TEST_EMP RENAME COLUMN ID TO EMP_ID;

 

  4). 컬럼에 코멘트 등록하기

  COMMENT ON TABLE TEST_EMP IS '임직원'; //테이블코멘트

  COMMENT ON COLUMN TEST_EMP.JOIN_DATE IS '입사일자'; //컬럼코멘트

  

3. 테이블 삭제 (DROP) - 삭제시 주의필요

DROP TABLE TEST_EMP;  // TEST_EMP 테이블 삭제

 

4. 테이블 모든 데이터 삭제 (TRUNCATE)

TRUNCATE TABLE TEST_EMP;

 

 

DELETE, TRUNCATE, DROP 비교

  DELETE TRUNCATE DROP
명령어 구분 DML DDL DDL
삭제대상 행데이터및 전체-선택가능 전체데이터및 인덱스 테이블 자체 삭제
데이터저장공간및 인덱스 남겨져 있음 삭제됨 삭제됨
컬럼및 제약조건. 남겨져 있음 남겨져 있음 삭제됨

 

DELETE 와 TRUNCATE 의 차이는  TRUNCATE 는  공장초기화라고 보면 된다.

728x90