No, este es un concepto erróneo común sobre MySQL. De hecho, la "longitud" no tiene efecto sobre el tamaño de un número entero o el rango de valores que puede almacenar.
TINYINT
siempre es de 8 bits y puede almacenar 2 valores distintos.SMALLINT
es siempre de 16 bits y puede almacenar 2 valores distintos.INT
siempre es de 32 bits y puede almacenar 2 valores distintos.BIGINT
siempre es de 64 bits y puede almacenar 2 valores distintos.
También hay un MEDIUMINT, pero los ingenieros que trabajan en MySQL me dicen que MEDIUMINT siempre se promociona internamente a un INT de 32 bits, por lo que en realidad no hay ningún beneficio en usar MEDIUMINT.
La longitud es solamente para mostrar, y esto solo importa si usa el ZEROFILL
opción.
Vea un ejemplo en mi respuesta a ¿Cuál es la diferencia (cuando se aplica a mi código) entre INT(10) e INT(12)?