목차

    Java, IntelliJ/Spring

    MySQL Datatype 데이터 타입

    고로케 2021. 7. 20.

    목차

      반응형

       

       

      MySQL에서 지원하는 데이터 형(MySQL DataTypes)

      형태데이터형범위크기

      숫자형 TINYINT -128 ~ 128 , 0 ~ 255 1 Byte
      SMALLINT -32768 ~ 32767 , 0 ~ 65535 2 Byte
      MEDIUMINT -8388608 ~ 8388607, 0 ~ 16777215 3 Byte
      INT, INTEGER -2147483648 ~ 2147483647, 0 ~ 4294967295 4 Byte
      BIGINT -9223372036854775808 ~ 9223372036854775807
      0 ~ 18446744073709551615
      8 Byte
      FLOAT -3.402823466E+38 ~ -1.175494351E-38
      1.175494351E-38 ~ 3.402823466E+38
      4 Byte
      DOUBLE [PRECISION], REAL 1.7976931348623157E+308 ~ -2.2250738585072014E-308
      0 ~ 2.2250738585072014E-308
      8 Byte
      DECIMAL(M,D), NUMERIC(M,D) 데이터 베이스 설정 및 시스템에 따라 다름 가변적 크기
      날자형 DATE '1000-01-01' ~ '9999-12-31' 3 Byte
      TIME '-838:59:59' ~ '838:59:59' 3 Byte
      DATETIME '1000-01-01 00:00:00' ~ '9999-12-31 23:59:59' 8 Byte
      TIMESTAMP '1970-01-01 00:00:01' ~ '2038-01-19 03:14:07' 4 Byte
      YEAR 1901 ~ 2155 1 Byte
      문자(열)형 CHAR(M) 1~ 255 개의 문자 M <= 255 Byte
      BINARY(M) 1 ~ 255 개의 문자 M Byte
      VARCHAR(M), VARBINARY(M) 1 ~ 255 개의 문자 M Byte
      TINYBLOB, TINYTEXT 최대 2^8 입력된 길이 만큼
      BLOB, TEXT 최대 2^16 입력된 길이 만큼
      MEDIUMBLOB, MEDIUMTEXT 최대 2^24 입력된 길이 만큼
      LONGBLOB, LONGTEXT 최대 2^32 입력된 길이 만큼
      ENUM 최대 65525 개 1 ~ 2 Byte
      SET 최대 64 개의 셋 1 ~ 8 Byte

      효율적인 테이블 설계 방법 요약 
      1. 저장할 데이터에 맞게 최대한 작은 데이터 타입을 사용해야 합니다. 
      2. 컬럼에서 DEFAULT NULL을 최대한 허용하지 마세요
      3. 가변적인 데이터타입 보다 고정형의 데이터 타입을 선택하세요
      4. PRIMARY KEY는 작은 데이터형으로 잡습니다. (AUTO_INCREMENT 최대한 사용)
      5. 모든 데이터는 정규화를 꼭 해야 합니다.
      6. 인덱스는 필요한 경우만 사용합니다. 

       

      데이터 타입을 참고하고 테이블 설계할 때 고려해야할 사항들을 체크해야겠다.

       

       

       

      MySQL Datatype 데이터 타입

      출처 https://yongji.tistory.com/23

      반응형

      댓글