create table 테이블명(
컬럼명 타입 [제약조건],
컬럼명 타입 [제약조건],
컬럼명 타입 primary key,
컬럼명 타입 [constraint 제약조건명] references 테이블명(컬럼명),
primary key(컬럼명[, 컬럼명]), -- 복합키일 경우 무조건 테이블레벨로 선언
[constraint 제약조건명] foreign key(컬럼명[, 컬럼명]) references 테이블명(컬럼명)
);
컬럼 타입
-숫자
정수
TINYINT
SMALLINT
MEDIUMINT
INT(4byte)
BIGINT(8byte)
실수
DECIMAL(m,d) m : 전체 자리수(최대 65) , d: 소수점 자리수(최대 30)
FLOAT
DOUBLE
-문자
CHAR(크기)
VARCHAR(최대 크기) 0 to 65,535
MEDIUMTEXT
TEXT
LONGTEXT
-날짜
DATE : 연 월 일
DATETIME : 연 월 일 시 분 초
TIMESTAMP : 연 월 일 시 분 초 timezone
TIME : 시 분 초
-바이너리 데이터
BLOB : Byte배열 저장 - 파일을 통째로 저장시 사용
제약 조건(constraint)
NOT NULL : null값 허용 X.
UNIQUE : 중복된 값 저장 X.
CHECK 조건 : 주어진 조건에 맞는 데이터만 저장
PK : PRIMARY KEY 기본키. 식별자 - null X, 중복값 X
FK : FOREIGN KEY 참조키(외래키). -
PK를 참조해 PK에 저장된 값들 중에서만 저장. null O, 중복값 O
DEFAULT 값 : 컬럼에 값이 저장되지 않을 때 기본값 저장
FK on delete /on update 옵션
cascade
set null
set default
restrict(no action)
'데이터베이스' 카테고리의 다른 글
index (0) | 2024.11.07 |
---|---|
[DML] select (0) | 2024.11.02 |
[DDL] drop (0) | 2024.11.02 |
함수종속성 (0) | 2024.10.23 |
[DDL] alter (0) | 2024.10.16 |