데이터베이스/Oracle

데이터 정의어

eunsour 2020. 7. 30.
반응형

DBMS - Oracle Database

VERSION - Oracle Database 11g Release 2

IDE - SQL Developer

 

실습용 데이터를 입력하지 않고, 오라클 데이터베이스를 설치하면 기본으로 제공되는 테이블과 계정들로 학습한 내용입니다. 


※ 객체를 생성, 변경, 삭제하는 데이터 정의어

1. 데이터 정의어를 사용할 때 유의점

 데이터 정의어는 데이터 조작어(DML)와 달리 명령어를 수행하자마자 데이터베이스에 수행한 내용이 바로 반영되는 특성이 있다. 즉 데이터 정의어를 실행하면 자동으로 COMMIT되기 때문에 이전에 사용한 데이터 조작어는 영구히 데이터베이스에 반영된다. ROLLBACK을 통한 실행 취소가 불가하다.

 

 데이터 정의어에는 객체를 생성하는 CREATE, 이미 생성된 객체를 변경하는 ALTER, 객체를 삭제하는 DROP 등의 명령어로 이루어져 있다.


※ 테이블을 생헝하는 CREATE

1. 자료형을 각각 정의하여 새 테이블 생성하기

CREATE TABLE EMP_DDL( 
    EMPNO NUMBER(4), 
    ENAME VARCHAR2(10), 
    JOB VARCHAR2(9), 
    MGR NUMBER(4), 
    HIREDATE DATE, 
    SAL NUMBER(7, 2), 
    COMM NUMBER(7, 2), 
    DEPTNO NUMBER(2)); 
     
DESC EMP_DDL; 

2. 기존 테이블 열 구조와 데이터를 복사하여 새 테이블 생성하기

CREATE TABLE DEPT_DDL 
    AS SELECT * FROM DEPT; 
     
SELECT * FROM DEPT_DDL; 

결과 >>

3. 기존 테이블 열 구조와 일부 데이터만 복사하여 새 테이블 생성하기 

CREATE TABLE EMP_DDL_30 
    AS SELECT * FROM EMP 
        WHERE DEPTNO = 30; 
         
SELECT * FROM EMP_DDL_30; 

결과 >>

 


테이블을 변경하는 ALTER 

1. 테이블에 열 추가하는 ADD 

ALTER TABLE EMP_ALTER  
    ADD HP VARCHAR2(20); 
     
SELECT * FROM EMP_ALTER; 

결과 >>

2. 열 이름을 변경하는 RENAME 

ALTER TABLE EMP_ALTER 
    RENAME COLUMN HP TO TEL; 
     
SELECT * FROM EMP_ALTER; 

결과 >>

3. 열의 자료형을 변경하는 MODIFY 

ALTER TABLE EMP_ALTER 
    MODIFY EMPNO NUMBER(5); 

DESC EMP_ALTER; 

 

4. 특정 열을 삭제할 때 사용하는 DROP 

 

ALTER TABLE EMP_ALTER 
DROP COLUMN TEL; 

SELECT * FROM EMP_ALTER; 

결과 >>

 


테이블 이름을 변경하는 RENAME 

1. 테이블 이름 변경하기 

RENAME EMP_ALTER TO EMP_RENAME; 

SELECT * FROM EMP_RENAME; 

 


 테이블의 데이터를 삭제하는 TRUNCATE

1. EMP_RENAME 테이블의 전체 데이터 삭제하기

TRUNCATE TABLE EMP_RENAME; 

SELECT * FROM EMP_RENAME; 

결과 >>


테이블을 삭제하는 DROP 

1. EMP_RENAME 테이블 삭제하기

DROP TABLE EMP_RENAME; 

 

 

 

Reference

 
Do it! 오라클로 배우는 데이터베이스 입문
저자 : 이지훈
출판 : 이지스퍼블리싱
발매 : 2018.10.30

 

반응형

댓글