Maison  >  Article  >  base de données  >  Quels sont les types de données des champs dans la table de données MySQL ?

Quels sont les types de données des champs dans la table de données MySQL ?

青灯夜游
青灯夜游original
2020-07-21 13:24:527115parcourir

Les types de données des champs de la table de données sont : TINYINT, SMALLINT, MEDIUMINT, INT, INTEGE, DATETIME, DATE, TIMESTAMP, TIME, YEAR, CHAR, VARCHAR, TEXT, TINYBLOB, BLOB, etc.

Quels sont les types de données des champs dans la table de données MySQL ?

Les types de champs de données définis dans MySQL sont très importants pour l'optimisation de votre base de données.

MySQL prend en charge plusieurs types, qui peuvent être grossièrement divisés en trois catégories : les types numériques, date/heure et chaîne (caractère). [Tutoriel recommandé : "Tutoriel mysql"]

Type numérique

MySQL prend en charge tous les types de données numériques SQL standard.

Ces types incluent des types de données numériques strictes (INTEGER, SMALLINT, DECIMAL et NUMERIC) et des types de données numériques approximatives (FLOAT, REAL et DOUBLE PRECISION).

Le mot-clé INT est synonyme de INTEGER, et le mot-clé DEC est synonyme de DECIMAL.

Le type de données BIT stocke les valeurs des champs de bits et prend en charge les tables MyISAM, MEMORY, InnoDB et BDB.

En tant qu'extension du standard SQL, MySQL prend également en charge les types entiers TINYINT, MEDIUMINT et BIGINT. Le tableau suivant montre le stockage et la plage requis pour chaque type entier.

tr> (0, 255)4 octets Dépend de la valeur de M et D
Type Taille Plage (signée) Plage (non signée) Objectif
TINYINT 1 octet (-128, 127)Petite valeur entière
SMALLINT 2 octets (-32 768, 32 767) (0, 65 535) Grande valeur entière
MEDIUMINT 3 octets (-8 388 608, 8 388 607) ( 0, 16 777 215) Grande valeur entière
INT ou INTEGER(-2 147 483 648, 2 147 483 647) (0, 4 294 967 295) Grande valeur entière td>
BIGINT 8 octets (-9 223 372 036 854 775 808, 9 223 372 036 854 775 807) (0 , 18 446 744 073 709 551 615) Valeur entière maximale
FLOAT 4 octets (-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) Simple précision
类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1 byte (-128,127) (0,255) 小整数值
SMALLINT 2 bytes (-32 768,32 767) (0,65 535) 大整数值
MEDIUMINT 3  bytes (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4  bytes (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8  bytes (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
FLOAT 4  bytes (-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  bytes (-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.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的值 小数值
Valeur à virgule flottante
DOUBLE 8 octets (-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 8 62 5 7 E+308) 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) Double précision

nombre à virgule flottante Valeur

DECIMAL Pour DECIMAL(M,D), si M>D, c'est M+2 sinon c'est D+2Dépend de la valeur de M et D Valeur décimale
Types de date et d'heure

Les types de date et d'heure représentant les valeurs d'heure sont DATETIME, DATE, TIMESTAMP, TIME et YEAR.

Chaque type d'heure a une plage de valeurs valide et une valeur "zéro". La valeur "zéro" est utilisée lors de la spécification d'une valeur illégale que MySQL ne peut pas représenter.

Le type TIMESTAMP possède des fonctionnalités propriétaires de mise à jour automatique, qui seront décrites plus tard.
类型 大小
( bytes)
范围 格式 用途
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
YEAR 1 1901/2155 YYYY 年份值
DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 4

1970-01-01 00:00:00/2038

结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07

YYYYMMDD HHMMSS 混合日期和时间值,时间戳
DATE tr >
Type Taille( octets) Plage Format Objectif
3 1000-01-01/9999-12-31 AAAA- MM-JJ Valeur de date
HEURE 3 '-838:59:59'/'838:59:59' HH:MM:SS Valeur temporelle ou durée
ANNÉE 1 1901/2155 AAAA Valeur de l'année
DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 AAAA-MM-JJ HH:MM:SS Date mixte et valeurs temporelles
TIMESTAMP 4 1970-01-01 00:00:00/2038L'heure de fin est 2147483647 seconde, heure de Pékin2038-1-19 11:14:07 , 03:14:07 GMT le 19 janvier 2038 AAAAMMJJ HHMMSS Valeurs de date et d'heure mixtes, horodatages

Type de chaîne

Le type de chaîne fait référence à CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM et SET. Cette section décrit le fonctionnement de ces types et comment les utiliser dans les requêtes.

类型 大小 用途
CHAR 0-255 bytes 定长字符串
VARCHAR 0-65535 bytes 变长字符串
TINYBLOB 0-255 bytes 不超过 255 个字符的二进制字符串
TINYTEXT 0-255 bytes 短文本字符串
BLOB 0-65 535 bytes 二进制形式的长文本数据
TEXT 0-65 535 bytes 长文本数据
MEDIUMBLOB 0-16 777 215 bytes 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215 bytes 中等长度文本数据
LONGBLOB 0-4 294 967 295 bytes 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295 bytes 极大文本数据

Remarque : n entre parenthèses de char(n) et varchar(n) représente le nombre de caractères, pas le nombre d'octets. Par exemple, CHAR(30) peut stocker 30 caractères.

Les types CHAR et VARCHAR sont similaires, mais ils sont enregistrés et récupérés différemment. Ils diffèrent également en termes de longueur maximale et de préservation des espaces de fin. Aucune conversion de cas n'est effectuée pendant le stockage ou la récupération.

BINARY et VARBINARY sont similaires à CHAR et VARCHAR, sauf qu'ils contiennent des chaînes binaires au lieu de chaînes non binaires. Autrement dit, ils contiennent des chaînes d'octets plutôt que des chaînes de caractères. Cela signifie qu'ils n'ont pas de jeu de caractères et que le tri et la comparaison sont basés sur la valeur numérique des octets de valeur de colonne.

Un BLOB est un gros objet binaire qui peut contenir une quantité variable de données. Il existe 4 types de BLOB : TINYBLOB, BLOB, MEDIUMBLOB et LONGBLOB. Ils diffèrent par la plage de stockage qu’ils peuvent accueillir.

Il existe 4 types de TEXTE : TINYTEXT, TEXT, MEDIUMTEXT et LONGTEXT. Les quatre types BLOB correspondants ont des longueurs de stockage maximales différentes, qui peuvent être sélectionnées en fonction de la situation réelle.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn