>  기사  >  데이터 베이스  >  mysql 데이터 테이블의 필드 데이터 유형은 무엇입니까?

mysql 데이터 테이블의 필드 데이터 유형은 무엇입니까?

青灯夜游
青灯夜游원래의
2020-07-21 13:24:527115검색

데이터 테이블에 있는 필드의 데이터 유형은 TINYINT, SMALLINT, MEDIUMINT, INT, INTEGE, DATETIME, DATE, TIMESTAMP, TIME, YEAR, CHAR, VARCHAR, TEXT, TINYBLOB, BLOB 등입니다.

mysql 데이터 테이블의 필드 데이터 유형은 무엇입니까?

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

MySQL은 다양한 유형을 지원하며 이는 대략 숫자, 날짜/시간 및 문자열(문자) 유형의 세 가지 범주로 나눌 수 있습니다. [추천 튜토리얼: "mysql 튜토리얼"]

숫자 유형

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,255) 작은 정수 value
SMALLINT 2바이트 (-32 768, 32 767) (0, 65 535) 큰 정수 값
MEDIUMINT 3바이트 (- 8 388 608, 8 388 607) (0, 16 777 215) 큰 정수 값
INT 또는 INTEGER 4바이트 (-2 147 483 648, 2 147 483 6 47) ( 0, 4 294 967 295) 큰 정수 값
BIGINT 8바이트 (-9,223,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바이트 (-1.797 693 134 86 2 315 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.225 073 858 507 201 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 , 시간 및 연도.

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

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

TIMEate3ATE-838 : 59 : 59 '/'838 : 59 : 59'YYYYYYYY-MM - DD ​​HH:MM:SS1970-01-01 00:00:00/2038종료 시간은 초입니다. , 베이징 시간 , 2038년 1월 19일 오전 03:14:07 GMT
Type Size
(바이트)
Range Format Use
DATE 3 1000-01-01/9999-12 -31 YYYY-MM-DD DATE VALUESTIMESTIME
HH : MM : SSATTIME 값 또는 지속 시간 year 1 1901/2155
연도 값 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59
날짜와 시간 값이 혼합됨 TIMESTAMP 4
21474836472038-1-19 11:14:07

YYYYMMDD HHMMSS

날짜 및 시간 혼합 값, 타임스탬프

문자열 유형

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

TEXTMEDIUMBLOB 형식 MEDIUMTEXTLONGBLOBLONGTEXT참고: char(n) 및 varchar(n)의 괄호 안의 n은 바이트 수가 아닌 문자 수를 나타냅니다. 예를 들어 CHAR(30)은 30자를 저장할 수 있습니다.
Type Size Use
CHAR 0~255바이트 고정 길이 문자열
VARCHAR 0~65535바이트 가변 길이 문자열
TINYBLOB 0-255바이트 255자 이하의 이진 문자열
TINYTEXT 0-255바이트 짧은 텍스트 문자열
BLOB 0-65 535바이트 바이너리 긴 텍스트 데이터
0-65 535바이트 긴 텍스트 데이터
0-16 777 215바이트 바이너리 형식의 중간 길이 텍스트 데이터
0 -16 777 215바이트 중간 길이의 텍스트 데이터
0-4 294 967 295바이트 바이너리 형식의 매우 큰 텍스트 데이터
0-4 294 96 7,295바이트 매우 큰 텍스트 데이터

CHAR 및 VARCHAR 유형은 유사하지만 저장 및 검색 방식이 다릅니다. 또한 최대 길이와 후행 공백이 유지되는지 여부도 다릅니다. 저장 또는 검색 중에는 대소문자 변환이 수행되지 않습니다.

BINARY 및 VARBINARY는 이진이 아닌 문자열 대신 이진 문자열을 포함한다는 점을 제외하면 CHAR 및 VARCHAR과 유사합니다. 즉, 문자열이 아닌 바이트 문자열을 포함합니다. 이는 문자 세트가 없으며 정렬 및 비교가 열 값 바이트의 숫자 값을 기반으로 함을 의미합니다.

BLOB는 가변적인 양의 데이터를 담을 수 있는 이진 대형 객체입니다. BLOB 유형에는 TINYBLOB, BLOB, MEDIUMBLOB 및 LONGBLOB의 4가지가 있습니다. 수용할 수 있는 저장 범위가 다릅니다.

TINYTEXT, TEXT, MEDIUMTEXT 및 LONGTEXT의 4가지 TEXT 유형이 있습니다. 해당하는 4개의 BLOB 유형은 실제 상황에 따라 선택할 수 있는 최대 저장 길이가 서로 다릅니다.

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

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