| 학번(Student ID) | 이름(Name) | 전공(Major) | 나이(Age) |
|---|---|---|---|
| 필드 | 필드 | 필드 | 필드 |
1, 김철수, 컴퓨터 공학, 20은 하나의 레코드| 학번(Student ID) | 이름(Name) | 전공(Major) | 나이(Age) |
|---|---|---|---|
| 1 | 김철수 | 컴퓨터공학 | 20 |
| 2 | 이영희 | 전자공학 | 22 |
| 3 | 박지훈 | 기계공학 | 21 |
MySQL 예시
CREATE TABLE book(
id INT NOT NULL AUTO_INCREMENT, title VARCHAR(255),
author_id INT,
publishing_year VARCHAR(255), genre VARCHAR(255),
created_at DATETIME, updated_at DATETIME,
PRIMARY KEY (id)
);

INTEGER, VARCHAR, DATE, BOOLEAN 등이 데이터 타입임| 필드 | 데이터 타입 |
|---|---|
| 학번(Student ID) | INTEGER |
| 이름(Name) | VARCHAR(50) |
| 전공(Major) | VARCHAR(50) |
| 나이(Age) | INTEGER |
MySQL 숫자 타입
| Type | Storage (Bytes) | Minimum Value Signed | Minimum Value Unsigned | Maximum Value Signed | Maximum Value Unsigned |
|---|---|---|---|---|---|
| TINYINT | 1 | -128 | 0 | 127 | 255 |
| SMALLINT | 2 | -32768 | 0 | 32767 | 65535 |
| MEDIUMINT | 3 | -8388608 | 0 | 8388607 | 16777215 |
| INT | 4 | -2147483648 | 0 | 2147483647 | 4294967295 |
| BIGINT | 8 | -2^63 | 0 | 2^63 - 1 | 2^64 - 1 |
만약 unsigned를 쓰려고 한다면?
author_id INT UNSIGNED
MySQL 날짜 타입
| Type | Format | 범위 | 저장 크기 | 추가 설명 |
|---|---|---|---|---|
| DATE | YYYY-MM-DD | 1000-01-01 ~ 9999-12-31 | 3 bytes | 날짜만 저장 |
| DATETIME | YYYY-MM-DD HH:MM:SS | 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59 | 8 bytes | 날짜와 시간 저장 |
| TIMESTAMP | YYYY-MM-DD HH:MM:SS | 1970-01-01 00:00:01 UTC ~ 2038-01-19 03:14:07 UTC | 4 bytes | UTC 기준으로 저장, 타임존 영향을 받음 |