Latest web development tutorials

Tipos de datos MySQL

MySQL definiciones de tipos de datos en el campo de la optimización de su base de datos es muy importante.

MySQL soporta muchos tipos se pueden dividir en tres categorías: numérico, fecha / hora y los tipos de cadena (de caracteres).


Tipo valor

MySQL soporta todos los tipos de datos numéricos SQL estándar.

Estos tipos incluyen estrictas tipos de datos numéricos (entero, SMALLINT, decimal y numérico), así como los tipos de datos numéricos aproximados (float, precisión REAL y DOUBLE).

Palabra clave INT es un sinónimo de INTEGER, y la palabra clave DEC es un sinónimo de decimal.

Bit de tipo de datos almacena los valores de un bit y soporta MyISAM, la memoria, las tablas InnoDB y BDB.

A medida que el estándar SQL, MySQL también soporta los tipos enteros TINYINT, MEDIUMINT y BIGINT. La siguiente tabla muestra el almacenamiento y el rango para cada tipo entero requerido.

tipo tamaño Rango (Firmado) Rango (sin firmar) uso
TINYINT 1 byte (-128.127) (0255) Los valores pequeños enteros
SMALLINT 2 bytes (768,32 -32 767) (535 0,65) valor entero
MEDIUMINT 3 bytes (-8388 608,8 388 607) (0,16 777215) valor entero
INT o entero 4 bytes (-2 147 483 648,2 147 483 647) (0,4 294 967 295) valor entero
BIGINT 8 bytes (-9.233.372.036.854.775 808,9 223.372.036.854.775 807) (0,18 446.744.073.709.551 615) El valor máximo número entero
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) valores de punto flotante de precisión simple
DOBLE 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) valores de coma flotante de doble precisión
DECIMAL De DECIMAL (M, D), si M> D, M + 2 es por lo demás D + 2 Depende de los valores de M y D Depende de los valores de M y D valor decimal

Tipos de fecha y hora

Indica la fecha y la hora para el tipo del valor temporal del DATETIME, DATE, TIMESTAMP, TIME y año.

Cada tipo tiene un rango de tiempo de los valores válidos y un valor "cero", utilice el valor "cero" cuando el valor de la MySQL ilegal especificada no puede ser representado.

tipo TIMESTAMP tiene patentada función de actualización automática, que se describirá más adelante.

tipo tamaño
(Byte)
alcance formato uso
FECHA 3 01.01.1000 / 9999-12-31 AAAA-MM-DD Los valores de fecha
TIEMPO 3 "-838: 59: 59 '/' 838: 59: 59 ' HH: MM: SS Valor de tiempo o la duración
AÑO 1 1901/2155 AAAA Valor año
DATETIME 8 1000-01-0100: 00: 00 / 9999-12-31 23:59:59 AAAA-MM-DD HH: MM: SS Mezcla los valores de fecha y hora
TIMESTAMP 4 En algún momento 00/2037 Año: 1970-01-01 00:00 AAAAMMDD HHMMSS La mezcla y la fecha valor de tiempo, una marca de tiempo

tipo de cadena

Se refiere a un tipo de cadena CHAR, VARCHAR, binario, VARBINARY, BLOB, TEXT, ENUM, y SET. En esta sección se describe cómo funcionan estos tipos y cómo utilizar estos tipos en la consulta.

tipo tamaño uso
CHAR 0-255 bytes cadena de longitud fija
VARCHAR 0-65535 bytes cadenas de longitud variable
TINYBLOB 0-255 bytes No más de 255 caracteres en una cadena binaria
TINYTEXT 0-255 bytes cadenas de texto cortos
BLOB 0-65535 bytes los datos de texto largo en forma binaria
TEXTO 0-65535 bytes los datos de texto largo
MEDIUMBLOB 0-16777215 bytes forma binaria de datos de texto longitud media
MEDIUMTEXT 0-16777215 bytes datos de texto longitud media
LONGBLOB 0-4294967295 bytes los datos de texto grandes en forma binaria
LONGTEXT 0-4294967295 bytes Gran datos de texto

CHAR similar y tipo VARCHAR, pero guardar y recuperar diferentes maneras. Su longitud máxima y si los espacios finales, sino que también es diferente. proceso de recuperación de almacenamiento o sin conversión caso.

tipo binary y varbinary es similar a CHAR y VARCHAR, salvo que contienen cadenas binarias en lugar de cadenas no binarias. Es decir, que contienen cadenas de bytes en lugar de cadenas de caracteres. Esto significa que no tienen ningún juego de caracteres y la comparación y ordenación se basan en los valores numéricos de los bytes.

BLOB es un objeto grande binario que puede contener una cantidad variable de datos. Hay cuatro tipos BLOB: TINYBLOB, BLOB, MEDIUMBLOB y LONGBLOB. Sólo se diferencian acomodar el valor de longitud máxima.

Hay cuatro tipos de texto: TINYTEXT, texto, MEDIUMTEXT y LONGTEXT. Estos corresponden a las cuatro clases de tipo BLOB, tienen la misma máximas longitudes y los requisitos de almacenamiento.