Estos son los diferentes datos que provee MySQL para usar en sus columnas.
Numéricos enteros
Tipo | Tamaño | Valor mínimo | Valor máximo |
---|---|---|---|
INTEGER | 32 bits | -2^31 | 2^31 - 1 |
UNSIGNED INTEGER | 32 bits | 0 | 2^32 - 1 |
BIT (M) | M | 1 bit | 64 bits |
TINYINT | 8 bits | -2^7 | 2^7 - 1 |
UNSIGNED TINYINT | 8 bits | 0 | 2^8-1 |
SMALLINT | 16 bits | -2^15 | 2^15 - 1 |
UNSIGNED SMALLINT | 16 bits | 0 | 2^16 - 1 |
MEDIUMINT | 24 bits | -2^23 | 2^23 - 1 |
UNSIGNED MEDIUMINT | 24 bits | 0 | 2 |
BIGINT | 64 bits | -2^63 | 2^63 - 1 |
UNSIGNED BIGINT | 64 bits | 0 | 2^64 - 1 |
Aliases
Tipo | Alias de | Descripción |
---|---|---|
BOOL | TINYINT(1) | Un valor de 0 es considerado falso, los demás son considerados verdaderos |
BOOLEAN | TINYINT(1) | Un valor de 0 es considerado falso, los demás son considerados verdaderos |
SERIAL | BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE | N/A |
Notas
- El tipo
BIT
no se imprime en declaraciones deSELECT
, es un valor binario.
Numéricos reales
Tipo | Tamaño | Valor mínimo | Valor máximo |
---|---|---|---|
FLOAT | 32 bits | -3.402823466E+38 / 1.175494351E-38 | -1.175494351E-38 / 3.402823466E+39 |
DOUBLE | 64 bits | -1.7976931348623157E+308 / 2.2240738585072014E-308 | -2.2240738585072014E-308 / 1.7976931348623157E+308 |
Aliases
Tipo | Alias de | Descripción |
---|---|---|
DEC | DECIMAL | N/A |
FIXED | DECIMAL | N/A |
DOUBLE_PRECISION | DOUBLE | N/A |
REAL | DOUBLE | N/A |
Notas
- Existe el atributo
UNSIGNED
en numéricos reales pero está obsoleto y no se recomienda su uso pues puede desaparecer en versiones futuras.
Texto
Tipo | Tamaño mínimo | Tamaño máximo | Descripción |
---|---|---|---|
CHAR | 0 | 255 | Cadena de texto rellena con espacios a la derecha hasta cumplir el tamaño configurado |
VARCHAR | 0 | 2^16 * | El tamaño máximo puede variar de acuerdo al charset configurado. El tamaño almacenado es variable |
BINARY | 0 | 255 | Similar a CHAR pero almacena cadenas binarias en lugar de caracteres |
VARBINARY | 0 | 2^16 * | Similar a VARCHAR pero almacena cadenas binarias en lugar de caracteres |
TINYBLOB | 0 | 2^8 - 1 | Almacena datos binarios |
TINYTEXT | 0 | 2^8 - 1 | Almacena caracteres |
BLOB | 0 | 2^16 - 1 | Almacena datos binarios |
TEXT | 0 | 2^16 - 1 | Almacena caracteres |
MEDIUMBLOB | 0 | 2^24 - 1 | Almacena datos binarios |
MEDIUMTEXT | 0 | 2^24 - 1 | Almacena caracteres |
LONGBLOB | 0 | 2^32 - 1 | Almacena datos binarios |
LONGTEXT | 0 | 2^32 - 1 | Almacena caracteres |
ENUM | 2^3 - 1 | 2^8 - 1 | Permite contener una cadena de caracteres de una lista predefinida |
SET | 2^3 - 1 | 2^64 - 1 | Similar a ENUM pero permite contener uno o más valores, hasta 64. |
Notas
CHAR
,VARCHAR
,BINARY
yVARBINARY
pueden ser especificados como índices sin agregar prefijos extra.
Fechas
Tipo | Valor mínimo | Valor máximo | Descripción |
---|---|---|---|
DATE | 1000-01-01 | 9999-12-31 | El formato de almacenamiento es YYYY-MM-DD |
DATETIME | 1000-01-01 00:00:00.000000 | 9999-12-31 23:59:59.999999 | La precisión de los segundos fraccionales es configurable, por defecto es 0 |
TIMESTAMP | 1970-01-01 00:00:01.000000 | 2038-01-19 03:14:07.999999 | Utiliza el EPOCH de Unix. El valor 0 está reservado para representar 0000-00-00 00:00:00 |
TIME | -838:59:59.000000 | 838:59:59.000000 | |
YEAR | 1901 | 2155 | El formato de almacenamiento es YYYY. El valor nulo es representado por 0000 |
Geoespaciales
Tipo | Descripción |
---|---|
POINT (x, y) | Una columna especificando coordenadas |
LINESTRING (x1 y1, x2 y2, …) | Una columna especificando una línea. Cada par de coordenadas está separado por una coma |
POLYGON ((x1 y1, x2 y2, …), (x1 y1, x2 y2, …)) | Una columna especificando un polígono. |
MULTIPOINT | Una columna especificando diferentes puntos. A diferencia de LINESTRING , estos no forman una línea. |
Notas
- Un polígono es una figura geométrica cerrada compuesta de segmentos de líneas.
- Los datos espaciales pueden visualizarse usando WKT (Well-Known Text) o WKB (Well-Known Binary).
- Los datos espaciales son almacenados usando WKB (Well-Known Binary).
JSON
Tipo | Descripción |
---|---|
JSON | Almacena documentos de JSON en la columna |
Notas
- Permite validación de documentos previo al almacenamiento.
- Almacena el JSON en un formato binario que acelera el acceso a lectura de atributos del documento.
Fuentes
- MySQL :: MySQL 8.0 Reference Manual :: 11 Data Types. (n.d.). Retrieved October 30, 2022, from https://dev.mysql.com/doc/refman/8.0/en/data-types.html
- MySQL :: MySQL 8.0 Reference Manual :: 11.1 Numeric Data Types. (n.d.). Retrieved October 30, 2022, from https://dev.mysql.com/doc/refman/8.0/en/numeric-types.html
- MySQL :: MySQL 8.0 Reference Manual :: 11.2 Date and Time Data Types. (n.d.). Retrieved October 30, 2022, from https://dev.mysql.com/doc/refman/8.0/en/date-and-time-types.html
- MySQL :: MySQL 8.0 Reference Manual :: 11.4 Spatial Data Types. (n.d.). Retrieved October 30, 2022, from https://dev.mysql.com/doc/refman/8.0/en/spatial-types.html
- MySQL :: MySQL 8.0 Reference Manual :: 11.5 The JSON Data Type. (n.d.). Retrieved October 30, 2022, from https://dev.mysql.com/doc/refman/8.0/en/json.html
0 Comentarios
para escribir tu comentario