Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

Studying data

[SQL][DDL] CREATE 본문

SQL

[SQL][DDL] CREATE

halloweenie 2022. 3. 14. 15:10

 

 

CREATE

- DDL 명령어 중 하나

- Database, Schema, Table 생성

 

 

Database / Schema 생성

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
 {
   CHARACTER SET [=] charset_name
 | COLLATE [=] collation_name
 | ENCRYPTION [=] {'Y' | 'N'}
}
  • if not exists : DB 생성시 존재 여부에 따라 쿼리를 진행
  • character set : 문자의 코드 집합 (ex. cp949, euc-kr, utf-8 ... )

 

예)

mysql> create database lecture;

mysql> USE lecture;    -- 현재 lecture라는 schema에 있게됨

 


Table 생성

CREATE TABLE 테이블이름
({ 속성이름 데이터타입    -- 열의 이름과 속성
[NOT NULL | UNIQUE | DEFAULT 기본값 | CHECK 체크조건] -- NULL값 또는 중복값 허용여부, 기본값설정, 데이터 점검
 }
  [PRIMARY KEY 속성이름(들)]
  {[FOREIGN KEY 속성이름 REFERENCES 테이블이름(속성이름)]
         [ON DELETE [CASCADE | SET NULL]
 }
)

 

  • 테이블 구성, 속성과 속성에 관한 제약 정의, 기본키 및 외래키를 정의하는 명령

       - PRIMARY KEY : 기본키를 정할 때 사용

       - FOREIGN KEY : 외래키를 정할 때 사용

       - ON UPDATE와 ON DELETE : 외래키 속성의 수정과 튜플 삭제 시 동작을 나타냄

 

 

예)  아래 속성을 가진 BookLibrary 테이블을 생성하시오.

       정수형은 INTEGER 사용, 문자형은 가변형 문자타입인 VARCHAR을 사용

       --> bookid(도서번호) - INTEGER

       --> bookname(도서이름) - VARCHAR(20)

       --> publisher(출판사) - VARCHAR(20)

       --> price(가격) - INTEGER

CREATE TABLE BookLibrary (
 bookid		INTEGER,
 bookname	VARCHAR(20),
 publisher  VARCHAR(20),
 price		INTEGER
 );

 

 

 

 

 

 

 

Comments