>  기사  >  데이터 베이스  >  데이터베이스 데이터 유형은 무엇입니까?

데이터베이스 데이터 유형은 무엇입니까?

angryTom
angryTom원래의
2019-08-03 09:42:1520413검색

데이터베이스 데이터 유형은 무엇입니까?

 MySQL에 정의된 데이터 필드 유형은 데이터베이스 최적화에 매우 중요합니다.

 MySQL은 다양한 유형을 지원하는데, 이는 대략 숫자, 날짜/시간 및 문자열(문자) 유형의 세 가지 범주로 나눌 수 있습니다.

추천 튜토리얼: MySQL 소개 비디오 튜토리얼

1. 숫자 유형

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

 이러한 유형에는 엄격한 숫자 데이터 유형(INTEGER, SMALLINT, DECIMAL 및 NUMERIC)과 대략적인 숫자 데이터 유형(FLOAT, REAL 및 DOUBLE PRECISION)이 포함됩니다.

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

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

 SQL 표준의 확장으로 MySQL은 정수 유형 TINYINT, MEDIUMINT 및 BIGINT도 지원합니다. 다음 표는 각 정수 유형에 필요한 저장 공간과 범위를 보여줍니다.

Type Size Range(서명됨) Range(unsigned) Use
TINYINT 1바이트 (-128, 127) (0, 25 5) 작은 정수 값
SMALLINT 2바이트 (-32 768, 32 767) (0, 65 535) 큰 정수 값
MEDIUMINT 3바이트 (-8 388 608, 8 388 607) (0, 16 777 215) 큰 정수 값
INT 또는 정수 4바이트 (-2 147 483 648, 2 14 7483 64 7) (0 ,4 294 967 295) 큰 정수 값
BIGINT 8바이트 (-9,223,372,036,854,775,808,9 223 372 036 854 77 5 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 82 3 466 351 E+ 38 ) 0, (1.175 494 351 E-38, 3.402 823 466 E+38) 단정밀도
부동 소수점 값
DOUBLE 8바이트 (-1.797 693 134 862 315 7 E+308 , -2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) 0, (2.22 5 073 858 5 072014E- 308, 1.797 693 134 862 315 7 E+308) 배정밀도
부동 소수점 값
DECIMAL DECIMAL(M,D)의 경우 M>D이면 M+2, 그렇지 않으면 D+2 M과 D의 값에 따라 다름 M과 D의 값에 따라 다름 소수값

2. 날짜 및 시간 유형

시간 값을 나타내는 날짜 및 시간 유형은 DATETIME, DATE, TIMESTAMP, TIME 및 YEAR입니다.

 각 시간 유형에는 유효한 값 범위와 "0" 값이 있습니다. "0" 값은 MySQL이 표현할 수 없는 잘못된 값을 지정할 때 사용됩니다.

 TIMESTAMP 유형에는 독자적인 자동 업데이트 기능이 있는데 이에 대해서는 나중에 설명하겠습니다.

TIMEate3I'-838 : 59 : 59 '/'838 : 59 : 59'YYYYYYYY- DD 시간 2038-1-19 11:14:07YYYYMMDD HHMMSS날짜 및 시간 혼합 값, 타임스탬프

3. 문자열 유형

문자열 유형에는 CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM 및 SET이 있습니다. 이 섹션에서는 이러한 유형의 작동 방식과 쿼리에서 이를 사용하는 방법을 설명합니다.

Type Size
(바이트)
Range Format Use
DATE 3 1000-01-01/9999-12 -31 YYYY-MM-DD DATE VALUETINGATIME
HH : MM : SSATTIME 값 또는 지속 시간 1 1901/2155
연도 값 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59: 59
, 2038년 1월 19일 오전 03:14:07 GMT
+ 535바이트 0-65 535바이트0-16 777 215바이트0-16 777 215바이트 0-4 294 967 295바이트 0-4 294 967 295바이트  CHAR 및 VARCHAR 유형은 유사하지만 저장 및 검색 방식이 다릅니다. 또한 최대 길이와 후행 공백이 유지되는지 여부도 다릅니다. 저장 또는 검색 중에는 대소문자 변환이 수행되지 않습니다.  BINARY 및 VARBINARY는 이진이 아닌 문자열 대신 이진 문자열을 포함한다는 점을 제외하면 CHAR 및 VARCHAR과 유사합니다. 즉, 문자열이 아닌 바이트 문자열을 포함합니다. 이는 문자 세트가 없으며 정렬 및 비교가 열 값 바이트의 숫자 값을 기반으로 함을 의미합니다.  BLOB는 가변적인 양의 데이터를 담을 수 있는 이진 대형 객체입니다. BLOB 유형에는 TINYBLOB, BLOB, MEDIUMBLOB 및 LONGBLOB의 4가지가 있습니다. 수용할 수 있는 저장 범위가 다릅니다.   TINYTEXT, TEXT, MEDIUMTEXT 및 LONGTEXT의 4가지 TEXT 유형이 있습니다. 해당하는 4개의 BLOB 유형은 실제 상황에 따라 선택할 수 있는 최대 저장 길이가 서로 다릅니다.
Type Size Use
CHAR 0-255바이트 고정 길이 문자열
VARCHAR 0-65535바이트 가변 길이 문자열
바이너리 형식의 긴 텍스트 데이터 TEXT
긴 텍스트 데이터 MEDIUMBLOB
바이너리 형식의 중간 길이 텍스트 MEDIUMTEXT
중간 길이의 텍스트 데이터 LONGBLOB
바이너리 형식의 매우 큰 텍스트 데이터 LONGTEXT
매우 큰 텍스트 데이터

위 내용은 데이터베이스 데이터 유형은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:MySQL이란?다음 기사:MySQL이란?