Latest web development tutorials

MySQL의 데이터 유형

데이터베이스 최적화 분야에서 MySQL의 데이터 유형 정의는 매우 중요합니다.

숫자, 날짜 / 시간 및 문자열 (문자) 유형 : MySQL은 많은 종류의 세 가지 범주로 나눌 수 있습니다 지원합니다.


값 유형

MySQL은 모든 표준 SQL 숫자 데이터 유형을 지원합니다.

이러한 유형의 엄격한 숫자 데이터 유형 (INTEGER, SMALLINT, DECIMAL과 NUMERIC)뿐만 아니라, 대략적인 숫자 데이터 타입 (FLOAT, REAL 및 DOUBLE PRECISION)를 포함한다.

키워드 INT는 INTEGER의 동의어이며, 키워드 십이 DECIMAL의 동의어입니다.

BIT 데이터 유형 저장 비트 필드 값과의 MyISAM, MEMORY, InnoDB의 및 BDB 테이블을 지원합니다.

표준 SQL로, MySQL은 또한 정수 타입 TINYINT, MEDIUMINT와 BIGINT를 지원합니다. 다음 표는 필요한 각 정수 유형에 대한 저장 및 범위를 보여줍니다.

유형 크기 범위 (서명) 범위 (서명) 용도
TINYINT 1 바이트 (-128,127) (0,255) 작은 정수 값
SMALLINT 2 바이트 (768,32 -32 767) (535 0,65) 정수 값
MEDIUMINT 3 바이트 (-8388 608,8 388 607) (경우 0 777215) 정수 값
INT 또는 INTEGER 4 바이트 (-2 147 483 648,2 147 483 647) (0.4 294 967 295) 정수 값
BIGINT 8 바이트 (-9,233,372,036,854,775 808,9 223,372,036,854,775 807) (0,18 446,744,073,709,551 615) 최대 정수 값
FLOAT 4 바이트 (-3.402 823 466 E + 38,1.175 494 351 E-38), 0 (1.175 494 351 E-38,3.402 823 466 351 E + 38) 0 (1.175 494 351 E-38,3.402 823 466 E + 38) 단 정밀도 부동 소수점 값
DOUBLE 8 바이트 , 0, (2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E + 308) (E + 308,2.225 073 858 507 201 사 E-308 1.797 693 134 862 315 7) 0 (2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E + 308) 배정 밀도 부동 소수점 값
DECIMAL DECIMAL (M, D) 중, M은> D는, M + 2 달리 D의 경우 + 2 이 M 및 D의 값에 의존 이 M 및 D의 값에 의존 진수 값

날짜 및 시간 형식

그것은 DATETIME, DATE, TIMESTAMP, TIME, 그리고 YEAR의 시간 가치의 유형에 대한 날짜와 시간을 나타냅니다.

각 유형의 유효 시간 값의 범위는 "제로"값을 갖고, 지정한 불법 MySQL의 값이 표시 할 수없는 경우에 "제로"값을 사용한다.

TIMESTAMP 타입 후술 특허 자동 갱신 기능을 가지고있다.

유형 크기
(바이트)
범위 체재 용도
DATE 3 1000년 1월 1일 / 9999-12-31 YYYY-MM-DD 날짜 값
TIME 3 '-838 : 59 : 59'/ '838 : 59 : 59' HH : MM : SS 시간 값 또는 기간
YEAR (1) 2,155분의 1,901 YYYY 연도 값
DATETIME 8 1000-01-0100 : 00 : 00 / 9999-12-31 23시 59분 59초 YYYY-MM-DD HH : MM : SS 날짜와 시간 값을 혼합
TIMESTAMP 4 언젠가 00/2037 년도 : 1970-01-01 0시 YYYYMMDD HHMMSS 혼합 날짜 및 시간 값, 타임 스탬프

문자열 유형

그것은 문자열 유형 CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM, 그리고 SET를 의미한다. 이 섹션에서는 이러한 유형의 작동 방법과 쿼리에서 이러한 유형을 사용하는 방법에 대해 설명합니다.

유형 크기 용도
CHAR 255 바이트 고정 길이 문자열
VARCHAR 65535 바이트 가변 길이 문자열
TINYBLOB 255 바이트 이진 문자열에 더 이상 255 자 이하
TINYTEXT 255 바이트 짧은 텍스트 문자열
BLOB 65535 바이트 바이너리 형식으로 긴 텍스트 데이터
TEXT 65535 바이트 긴 텍스트 데이터
MEDIUMBLOB 0-16777215 바이트 중간 길이 텍스트 데이터의 바이너리 형식
MEDIUMTEXT 0-16777215 바이트 중간 길이의 텍스트 데이터
LONGBLOB 0-4294967295 바이트 바이너리 형식으로 큰 텍스트 데이터
LONGTEXT 0-4294967295 바이트 큰 텍스트 데이터

유사 CHAR 및 VARCHAR 유형,하지만 그들은 저장하고 다른 방법을 검색 할 수 있습니다. 후미 공간이 유지되어 있는지의 최대 길이 또한 다르다. 경우 변환없이 저장 또는 검색 프로세스.

그들은 이진 문자열이 아닌 비 바이너리 문자열을 포함하는 것을 제외하고 BINARY 및 VARBINARY 타입은 CHAR 및 VARCHAR과 유사하다. 즉, 그들은 바이트 문자열이 아닌 문자열을 포함한다. 이것은 그들이 어떤 문자 세트가 없으며, 분류 및 비교를 바이트의 수치에 기초한다는 것을 의미한다.

BLOB 데이터의 변수 양을 보유 할 수있는 이진 대형 개체입니다. TINYBLOB, BLOB, MEDIUMBLOB와 LONGBLOB : 네 BLOB 유형이 있습니다. 그들은 단지 최대 길이 값을 수용 다르다.

TINYTEXT, TEXT, MEDIUMTEXT 및 LONGTEXT : 네 TEXT 유형이 있습니다. 이들은 BLOB 형의 네 종류의 대응하는 최대 길이와 저장 요건 동일한있다.