본문 바로가기
Web programming/SQL & DB

데이터를 정의하는 명령어 DDL / Character 형식

by Skilly 2020. 4. 7.

 

 

DDL (Data Definition Language)

데이터 정의어 (어떠한 데이터의 구조를 정의하는 명령어) 
종류 : CREATE / ALTER / DROP

CREATE (생성) 

데이터 구조를 정의 (그룹핑) 하는 명령어

CREATE 사용 : CREATE TABLE TABLENAME 
테이블 명이 예약어와 같을 경우 " "로 표기

ALTER (수정) 

데이터 조회하는 명령어

모든 데이터 필드 값을 조회하거나, 원하는 칼럼을 수정 할 때 사용 

ALTER 사용 : 아래 '사용' 내용 참고 

DROP (삭제) 

테이블 삭제하는 명령어

DROP 사용 : DROP TABLE TABLENAME; 

(마우스 커서 둔 상태로 실행)   

 

 

사용 : 

DROP TABLE MEM5;

SELECT*FROM MEM5;   
CREATE TABLE MEM5
(
    ID   VARCHAR2(50),
    PWD  VARCHAR2(50),
    NAME      VARCHAR2(50),
    GENDER      VARCHAR2(50),
    AGE  NUMBER,
    BIRTHDER  VARCHAR2(50),
    PHONE      VARCHAR2(50),
    EMAIL       VARCHAR2(1000),
    REGDATE  DATE
);

INSERT INTO MEMBER(ID,PWD) VALUES('IDNN','123');  
COMMIT;  

ALTER TABLE MEM5 MODIFY ID NVARCHAR2(20);  -- 모든 필드(컬럼) 값을 수정
ALTER TABLE MEM5 DROP COLUMN AGE;            -- 원하는 컬럼만 원하는 순서대로 수정
ALTER TABLE MEM5 ADD EMAIL VARCHAR2(200);  -- 원하는 컬럼을 원하는 별칭으로 수정

 

 

Oracle SQL Data Types

   Oracle Built-in Data Types  (내장 되어있는..) 
      - Character 형식  :  문자 (표현 : 'A')
      - Numeric 형식   :  숫자 (표현 : 38)
      - Date 형식        :  날짜 (표현 : '2020-04-07') 
      - TIMESTAMP  :  시간 (표현 : '2005-01-03 12:34:56+00')

                                      시분초까지 쓸 생각이면 이거 쓸것 (date에도 시분초 가능하지만, 여러 DB와 혼동없으려면)

      - LOB 형식* 큰 데이터에 사용

 


Character 형식

CHAR

: 지정된 숫자만큼의 고정 길이를 갖는 아스키코드 문자 데이터
한 데이터가 고정길이를 갖으니 읽는 검색 속도가 빠르지만 공간 효율이 떨어짐
최대 길이 2,000 byte (학번처럼 고정 크기 인 경우 사용)

 

사용 :  
CREATE TABLE TABLENAME 
( 
    ID   CHAR(3), >> 글자 3이 아닌, 3BYTE로 인식!! 
    ID  CHAR(3 CHAR), >> 3개 문자 저장 / 범위 4000 bytes까지 (천글자 정도까지 가능) 
); 

NCHAR

: 고정 길이를 갖는 유니코드 문자 데이터
(National인 N을 붙이면 사이즈가 2 또는 3bytes 커짐)
AL16UTF16 또는 UTF8의 인코딩 방식을 씀
최대 길이 2,000 byte (다국어나 한글 쓸 때 바람직)

VARCHAR 

: (쉽게 길이를 가늠할 수 없는) 가변 길이를 갖는 아스키코드 문자 데이터
 공간은 절약 할 수 있으나 구분자(,)를 읽느라 검색 속도가 빠름
 최대 길이 4,000 byte (크기가 들쑥날쑥 한 경우 사용)

 (VARCHAR2를 더 많이 사용 함)

NVARCHAR

: 가변 길이를 갖는 유니코드 문자 데이터

 



반응형