파닥이

[mysql] 필드 데이터 타입 정리 본문

IT/DB

[mysql] 필드 데이터 타입 정리

알라이또 2019. 8. 30. 09:46
반응형

데이터 자료형

“더 작은 공간을 사용하면서” , “더 빠르게 처리할수 있는” 프로그램을 만들기 위해서 데이터 자료형을 사용

VARCHAR(M) 와 CHAR(M) 차이

공통

VARCHAR(20) / CHAR(20) 에 20은 문자열에 길이를 의미함. 밑에 쿼리에서 CHAR_LENGTH에 해당하는 부분
(내부족으로 UTF-8로 변환하기 때문에 한글/영어 길이가 같음)

SET @var = "가나다마바사";
SELECT @var as "문자열", LENGTH(@var), CHAR_LENGTH(@var);

주의 : BINARY 키워드가 주어지지 않을 경우 대소문자 구분없이 검색한다.

차이

  • VARCHAR 는 가변형
  • CHAR는 고정형

  • 모든 데이터 값의 길이가 고정일 경우 char 가 varchar 보다 저장공간도 적게 차지하고 속도도 아주 약간 더 빠르다.
  • 대부분의 상황에서 varchar 와 char 는 IN/OUT 이 동일하게 처리된다. 아무거나 써도 되지만 varchar 를 선택하기를 권장한다.

ENUM 과 SET에 차이

  • ENUM

    • radio 버튼과 비슷
    • 범위 : ‘value1’, ‘value2’, …, or NULL 만이 입력가능하다. 최대 65535 개의 다른 값이 들어갈수 있다. (0은 불가능)
  • SET

    • checkbox 버튼과 비슷
    • 범위 : ‘value1’, ‘value2’, …, or NULL 만이 입력가능하다. 최대 64 개의 다른 값이 들어갈수 있다.
    • insert시에 자동으로 정렬 및 중복시 하나만 들어감

int 자료형 길이에 의미

추가자료

 

MySQL 필드 데이터 타입(자료형) 총정리

MySQL 5.0 기준 데이터 자료형을 정리했습니다~항상 DB를 설계하다보면 몇바이트였지? 몇까지 지원됐...

blog.naver.com

 

'IT > DB' 카테고리의 다른 글

페이지네이션 커서  (0) 2021.03.12
데이터베이스에서 NULL과 빈문자열  (0) 2019.09.05
[mybatis] typeHandler  (0) 2019.08.13
[mysql] 실행계획 및 실행프로세스  (0) 2019.07.31
[mysql] 문자열 자르기  (0) 2019.07.31
Comments