DDL (Data Definition Language)

: 테이블의 구조 자체를 생성, 수정, 제거하도록 하는 명령문의 집합

: CREATE, ALTER, RENAME, DROP, TRUNCATE

 

1. CREATE

: 데이터를 저장할 테이블 생성

CREATE TABLE table명 (column명(datatype));
AS 서브쿼리;

 

부서 정보를 저장하기 위한 테이블 생성하기

CREATE TABLE DEPT(
    DNO NUMBER(2),
    DNAME VARCHAR2(14),
    LOC VARCHAR2(13));

 

 

서브 쿼리문으로 부서 테이블의 구조와 데이터 복사하기

CREATE TABLE DEPT_SECOND
AS
SELECT *
FROM DEPARTMENT;
SELECT *
FROM DEPT_SECOND;

 

20번 부서 소속 사원에 대한 정보를 포함한 DEPT20 테이블 생성하기

CREATE TABLE DEPT20
AS
SELECT ENO, ENAME, SALARY*12 ANNSAL
FROM EMPLOYEE
WHERE DNO = 20;
SELECT *
FROM DEPT20;

 

서브 쿼리문 내의 산술식에 대해서는 별칭을 지정하지 않으면 오류 발생하므로 별칭 지정 필수

 

서브 쿼리의 WHERE 조건절에 항상 거짓이 되는 조건을 지정하면, 조건에 맞는 데이터가 발견되지 않게 되어 데이터는 복사되지 않고 기존 테이블의 구조만 복사됨 (ex) WHERE 0=1)

 

부서 테이블의 구조만 복사하기

CREATE TABLE DEPT_THIRD
AS
SELECT DNO, DNAME
FROM DEPT
WHERE 0=1;
DESC DEPT_THIRD;

 

SELECT *
FROM DEPT_THIRD;

 

+ Recent posts