테이블 선언 시 사용하는 문자형, 시간 데이터 타입의 문법을 알아보자.
CREATE TABLE mytable (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(30),
PRIMARY KEY(id)
)
문자 타입 컬럼 예시 : name VARCHAR(30)
데이터 유형 | 정의 |
---|---|
CHAR(n) | - 고정 길이 데이터 타입. 설정(n)한 만큼의 공간을 할당하며 n <= 255 까지 가능. - ex. CHAR(5) 'apple'은 5byte를 사용한 것, CHAR(50)에서 'apple'은 50byte를 사용한 것. - 공간을 많이 차지할 수 있다는 단점이 있지만(공간을 할당해둔만큼 실제 데이터보다 남는 공간이 생겨서), 데이터 수정 시 용이함(공간을 확보해둔 상태이므로). |
VARCHAR(n) | - 가변 길이 데이터 타입 (n <= 65535) - ex. VARCHAR(50)에서 'apple'은 5byte만 사용한 것 - 실제 데이터만큼의 공간만 할당하는 방식 - 수정 시 추가 작업들이 필요하므로, 한 번 저장하면 수정할 일이 별로 없을 때 사용 |
CREATE TABLE mytable (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
time DATE,
PRIMARY KEY(id)
)
시간 컬럼 예시 : time DATE
데이터 유형 | 정의 |
---|---|
DATE | 날짜(YYYY-MM-DD) 형태의 기간 표현 데이터 타입(3byte) |
TIME | 시간(hh:mm:ss) 형태의 기간 표현 데이터 타입(3byte). |
DATETIME | 날짜와 시간 형태 (YYYY_MM-DD hh:mm:ss). 1001-01-01 00:00:00 부터 9999-12-31 23:59:59 까지의 값을 표현. 문자형(8byte) |
TIMESTAMP | 1970-01-01 00:00:00 이후부터 시스템의 현재 시간까지의 지난 시간을 초로 환산하여 숫자로 표현 숫자형(4byte) |
CREATE TABLE mytable (
id INT,
컬럼명1 데이터타입,
컬럼명2 데이터타입,
PRIMARY KEY(id)
)
위의 내용은 인프런 잔재미코딩님의 강의를 듣고 리뷰한 내용입니다.