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;
'SQL - Oracle > 8. 테이블 생성, 수정, 제거하기 (DDL)' 카테고리의 다른 글
Day 34 : 데이터 사전 (0) | 2021.12.03 |
---|---|
Day 34 : 테이블의 모든 데이터를 제거하는 TRUNCATE TABLE 문 (0) | 2021.12.03 |
Day 34 : 테이블 구조를 제거하는 DROP TABLE 문 (0) | 2021.12.03 |
Day 34 : 테이블 명을 변경하는 RENAME 문 (0) | 2021.12.03 |
Day 34 : 테이블 구조를 변경하는 ALTER TABLE 문 (0) | 2021.12.03 |