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.