1. 데이터베이스 만들기
- CREATE SCHEMA `DATABASE_NAME` DEFAULT CHARACTER SET UTF8;
- CREATE DATABASE `DATABASE_NAME` DEFAULT CHARACTER SET UTF8;
2. 데이터베이스 선택
- use DATABASE_NAME;
3. 테이블 생성
- CREATE TABLE DATABASE_NAME.TABLE_NAME (
->colum_name type,
->colum_name type,
->PRIMARY KEY(colum_name)
->);
컬럼명 옆에는 컴럼에 대한 옵션을 적는다.
ex) id INT NOT NULL AUTO_INCREMENT
INT: 정수 자료형(FLOAT, DOUBLE은 실수)
VARCHAR: 문자열 자료형, 가변 길이(CHAR은 고정 길이)
TEXT: 긴 문자열은 TEXT로 별도 저장
DATETIME: 날짜 자료형 저장
TINYINT: -128에서 127까지 저장하지만 여기서는 1 또는 0만 저장해 불 값 표현
NOT NULL: 빈 값은 받지 않는다는 뜻(NULL은 빈 값 허용)
AUTO_INCREMENT: 숫자 자료형인 경우 다음 로우가 저장될 때 자동으로 1 증가
UNSIGNED: 0과 양수만 허용
ZEROFILL: 숫자의 자리 수가 고정된 경우 빈 자리에 0을 넣음
DEFAULT now(): 날짜 컬럼의 기본값을 현재 시간으로
PRIMARY KEY(colum_name) : 테이블에서 해당 컴럼은 고유값 중복불가
UNIQUE INDEX name_UNIQUE (name ASC) : 해당 컬럼
COMMENT : 테이블에 대한 보충 설명
DEFAULT CHARSET : UTF8 로 설정해야 한글 입력 (UTF8MB4 : 이모티콘 사용가능)
ENGINE : InnoDB 사용 (or MyISAM)
테이블 확인 : DESC table_name;
테이블 삭제 : DROP TABLE table_name;
- 외래키 : 외부 테이블에서 참조하는 주키(primary key)
FOREIGN KEY colum_name REFERENCES database.table_name (colum)
: database.table_name (colum) 값이 저장되는 colum_name 의 컴럼이 생김
ON DELETE (CASCADE or SET NULL) ,ON UPDATE CASCADE
: 외래키가 update or delete 될 때 참조하는 테이블의 로우가 같이 수정됨
cascade : 주키가 지워지면 참조테이블 로우도 지워짐
set null : 주키가 지워지면 참조테이블에서 null 로 변함
'SQL' 카테고리의 다른 글
Mysql 설치시 server has failed 에러 해결 방법 중 하나 (0) | 2021.12.27 |
---|---|
MYSQL - NodeJS 4 (0) | 2021.04.09 |
MYSQL - NodeJS 2.1 (0) | 2021.04.08 |
MYSQL - NodeJS 3 (0) | 2021.04.08 |
MYSQL - NodeJS 2 (0) | 2021.04.08 |
댓글