Los tipos tanto en las tablas, como en PROCEDURES y FUNCIONES en MySQL son:
DATOS NÚMERICOS
Variables o campos que guardan solo números, positivos o negativos, enteros o decimales,
en hexa, notación científica o decimal.
Los tipos enteros permiten ser
SIGNED y UNSIGNED SIGNED pueden ser + o negativos,
y solo positivos si son UNSIGNED.
Todos los tipos numéricos pueden usar
ZEROFILL entonces se completan con ceros hasta
el número de dígitos indicado, por ejemplo: (edad INT(4) zerofill un valor de 45 se almacenará como 0045).
TIPOS, en el caso de tener un (x) x es el número de dígitos (x,d) x dígitos, d decimales:
- BIT Máscara de bits por default 1 max=64
- BOOL Un entero TINYINT, 0 equivale a FALSE, cualquier otro a TRUE
- TINYINT Un entero con rango de valores de -128 a 127.
unsigned, de 0 a 255
- SMALLINT Un entero con rango de valores de -32.768 a 32.767
unsigned, de 0 a 65.535
- MEDIUMINT Un entero con rango de valores de -8.388.608 a 8.388.607
unsigned, de 0 a 16.777.215
- INT Un entero con rango de valores de -2.147.463.846 a 2.147.483.647
unsigned, de 0 a 4.294.967.295
- BIGINT Un entero con rango de valores de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807
unsigned, de 0 a 18.446.744.073.709.551.615
- FLOAT Un número de coma flotante de -1,17 E-38 a 3,4 E+38
- DOUBLE Un número de coma flotante de -2,25 E-308 a 1,79 E+308
- DECIMAL(M,D) Un número decimal fijo M max=65 D max=30
CARACTERES O CADENAS (STRINGS)
- CHAR Cadena de caracteres de long. fija de 1-255 caracteres, si la var es más
corta se rellena por derecha con espacios
- VARCHAR Cadena de caracteres de long. variable de 1-65.535 caracteres,
la long. max estará controlada por el tamaño del campo al cual se asocie
- TINYTEXT Texto de long. máx. 255 caracteres (2^8-1) + 1 byte para indicar
la longitud
- TEXT Texto de long. máx. 65.535 caracteres (2^16-1) + 2 byte para indicar
la longitud
- MEDIUMTEXT Texto de long. máx. 16.777.215 caracteres (2^24-1) + 3 byte para indicar
la longitud
- LONGTEXT Ttexto de long. máx. 4.294.967.295 caracteres (2^32-1) + 4 byte para indicar
la longitud
CARACTERES COMO CADENAS DE BITS (Para archivos binarios, como imágenes, video o audio)
- TINYBLOB Cadena de bits equivalente a la de caracteres de long. máx. 255 caracteres (2^8-1) + 1 byte para indicar
la longitud
- BLOB Cadena de bits equivalente a la de caracteres de long.. máx. 65.535 caracteres (2^16-1) + 2 byte para indicar
la longitud
- MEDIUMBLOB Cadena de bits equivalente a la de caracteres de long. máx. 16.777.215 caracteres (2^24-1) + 3 byte para indicar
la longitud
- LONGBLOB Cadena de bits equivalente a la de caracteres de long. máx. 4.294.967.295 caracteres (2^32-1) + 4 byte para indicar
la longitud
TIEMPO, FECHAS, ETC
- DATE Fecha en el formato SQL de 1000-01-01 a 9999-12-31
- DATETIME Fecha y hora en el formato SQL de 1000-01-01 00:00:00 a 9999-12-31 23:59:59
- TIMESTAMP Marca de tiempo va de 1970-01-01 00:00:01 a 2038-01-09 03:14:07 guardado
como el N° de segundos desde la "epoch" = 1970-01-01 00:00:00
- TIME Marca temporal de -838:59:59 a +-838:59:59
- YEAR Año con 2 0 4 dígitos, con 2 va de 00(2000) a 69 (2069) y de 70 (1970) a
99 (1999) con 4 de 1901 a 2155
BINARIOS (el contenido se parsea como binario y no como bytes)
- BINARY Igual a CHAR pero en binario
- VARBINARY Igual a VARCHAR pero en binario
OTROS
- SET Único valor elegido de una lista de hasta 64 valores
- ENUM Único valor elegido de una lista de hasta 65.535 valores o el valor
especial "error"
- JSON Maneja vectores JSON sin provocar problemas de "escape" de caracteres
especiales.