Las variables de usuario utilizan los mismos tipos de datos internos que utiliza MySQL para los cálculos de los valores de las columnas. Estos tipos internos son lo suficientemente grandes para todos tipos de datos compatibles con MySQL.
- Los enteros no tienen
ZEROFILL
, ya que es una propiedad adicional de la columna, no del tipo de datos en sí. Además, las variables de usuario enteras no tienen ancho; cuando se convierten a texto, usan tantos dígitos como sea necesario. - Los valores de coma flotante no tienen escala. Los flotantes IEEE de 64 bits son valores binarios y tienen suficiente precisión para aproximadamente 18 dígitos decimales.
- Las cadenas deberían, en teoría, contener cualquier
LONGTEXT
valor, simax_allowed_packet
es lo suficientemente grande y tiene suficiente memoria. Sin embargo, existe un límite no documentado de 16 MB para las variables de usuario, mencionado en el error 31898 .