공부하자/데이터베이스

데이터 베이스 1장 [테이블 생성 구문형식]

YoBot 2016. 11. 19. 17:52

1. 테이블 생성 구문 형식 


CREATE TABLE 테이블 이름 (
        컬럼명1 DATATYPE [DEFAULT 형식],
        컬럼명2 DATATYPE [DEFAULT 형식],
);


으로 생성을 할 수 있습니다.


예를 들어 CUSTOMER 이라는 테이블을 생성하다면, 아래와 같이 생성할 수 있다.


CREATE TABLE test(

CUSTOMER_ID CHAR( 3 ) NOT NULL ,

NAME VARCHAR( 20 ) ,

ADDRESS TEXT( 50 ) ,

PHONE INT( 12 )

);


컬럼 속성(무결성 제약조건) 여기서 NOT NULL 은CUSTOMER_ID의 정보가 NULL값을 갖지 않는다. 라는 정의이다. 즉
컬럼이  NULL 값을 허용하는지 허용하지 않는지를 정해줄 수 있으며 NOT NULL을 데이터 타입 다음에 명시하면 NULL값을 허용하지 않는 다는 것이다.default 값으로 NULL이 적용된다. 

컬럼은 임의로 CUSTOMER_ID, NAME , ADDRESS , PHONE 으로 생성을 하였으며,
각각의 타입 및 크기들은 CHAR( 3 ),TEXT( 50 ), INT( 12 ),VARCHAR( 20 )로 생성을 하였다. 
데이터 타입의 종류 경우 아래 이미지를 참고해주세요.

해당 테이블을 생성하였다면 INSERT를 이용하여 테이블에 데이터를 생성해보자 

INSERT의 딱딱한 형식은 아래와 같다.
-----------------------------------------------------------------------------------------------------
구문
- INSERT INTO TABLE_NAME (COLUMN1, COLUMN2, ...) VALUES (데이터, '데이터', ...);

특징
- 문자열을 삽입할 경우 값을 ''로 감싸줌
- 테이블의 모든 컬럼에 데이터를 넣을 경우 컬럼명 생략 가능
-----------------------------------------------------------------------------------------------------

간단하게 예제를 들어보자면 아래와 같다.

INSERT INTO `tlwmal1`.`test` (`CUSTOMER_ID`, `NAME`, `ADDRESS`, `PHONE`) VALUES ('001', '홍길동', '안녕시 안녕구', NULL);

INSERT INTO `tlwmal1`.`test` (`CUSTOMER_ID`, `NAME`, `ADDRESS`, `PHONE`) VALUES ('002', '홍길동친구', '안녕빵시 안녕빵구', NULL);


tlwmal1에 있는 test라는 테이블이라는 뜻이다.


와 같이 입력을 하면 아래와 같이 tlwmal1에 있는 test테이블에 데이터들이 생성된걸 확일 할 수 있습니다. 



테이블 생성시 기본 데이터 타입은 아래와 같이 나타낼수 있다. 참고만 하세요