CHAR⭐
- 의미 : 고정된 길이의 문자열
- 길이Byts : 0~255
- 선언된 값보다 짧은 문자열이 들어오면, 빈 문자열로 나머지 길이를 채워줌.
- 1개를 적어도 고정된 저장공간
- CHAT(4)일 때, 입력값 별로 저장 공간 동일. "파인애플" = 4byts, "사과" =4byts
- 고정된 문자열에 사용하기 좋음.
VARCHAR⭐
- 의미 : 변동 가능한 길이의 문자열
- 길이Byts : 0~65535
- 선언된 값에서 +1Byts 만큼의 저장공간 확보. 255Byts 이상부터는 +2Byts만큼의 저장공간 확보
- 변동성이 있는 문자열에 사용하기 좋음
TEXT
- 의미 : 변동 가능한 길이의 문자열
- 길이 최대 65535(길이설정 불가)
- Non-binary strings ( = character strings)
- 기본값 지정 불가
- varchar와는다르게 쿼리시 메모리가 아닌 디스크를 쓰기에 쿼리문 반환이 느림.
TINYTEXT
MEDIUMTEXT
LONGTEXT
- 큰 크기 TEXT
- 길이Byts 최대 4294967295
ENUM⭐
- 최초에 지정해 둔 리스트에 포함되는 값만 저장
- 만약 미리 지정해두지 않은 값을 테이블에 INSERT하려고 하면 에러 발생.
- 장점 : 효율적인 데이터 저장
- 단점 : 유연성, 확장성 낮음
- 사용처 예시 ) 부서 입력란 / 부서이외의 텍스트를 입력하면 오류반환.
SET
- 최초에 지정해 둔 리스트에(ENUM과 동일) 포함되는 값들을 중복으로 저장(순서를 무시하여 저장)
- 64개까지 사용 가능.