Oasis' story

DDL(Data Definition Language) 본문

Program Note/DB

DDL(Data Definition Language)

oasispapa 2014. 10. 10. 17:29

* CREATE TABLE test1 (column1 varchar2(1)) , ALTER TABLE test1 ADD/MODIFY/DROP (column1 varchar2(3))

* TRUNCATE : 테이블의 모든 행을 제거함. 해당 테이블이 사용하는 저장 공간을 해제, 롤백 불가. DELETE 보다 빠름. DROP ANY TABLE 권한 필요.

* DROP TABLE : 테이블의 모든 데이터 및 구조를 삭제. 롤백 불가. (10g 이후 Flashback 으로 복구 가능)

    ex) DROP TABLE emp;

          FLASHBACK TABLE emp TO BEFORE DROP;
* COLUMN TYPE :       

- NUMBER(p,s) : 정수, 실수. 십진 자리수 1~38까지. 소수점 이하 자리수 -84~127까지.

ex) NUMBER(5,2) : 소수 2자리까지 가능 (-999.99~999.99 까지)

- VARCHAR2(size) : 가변 길이 문자 데이터 (size : 1~4000)

- CHAR(size) : 고정 길이 문자 데이터 (size : 1~2000)

- LONG : 최대 2GB의 가변 길이 문자 데이터

- CLOB : 최대 4GB의 문자 데이터

- BLOB : 최대 4GB의 이진 데이터

- BFILE : 최대 4GB의 이진 데이터 (외부 파일에 저장)

- DATE : 날짜 및 시간 (B.C 4712.01.01 ~ A.D 9999.12.31)

             TIMESTAMP : 소수점 이하 초까지 있는 날짜              

                                 ex) TIMESTAMP(7) : 초의 소수점 7자리까지 저장

                                      CREATE TABLE TEST1 (S_DATE TIMESTAMP(7)) --default 는 6

             INTERVAL YEAR TO MONTH : 연수와 개월 수로 저장  

             INTERVAL YEAR TO MONTH : 연수와 개월 수로 저장  

                                 ex) INTERVAL '123-2' YEAR(3) TO MONTH : '123-2' 는 123년 2개월의 기간을 나타냄

             INTERVAL DAY TO SECOND : 날짜수, 시간 수, 분 수, 초 수로 저장
                                 ex) INTERVAL '12 MONTH(2) : 12개월의 기간을 나타냄

                                       SELECT SYSDATE + INTERVAL '12' MONTH(2) FROM DUAL;