En INT
kommer alltid att vara 4 byte oavsett vilken längd som anges.
TINYINT
=1 byte (8 bitar)SMALLINT
=2 byte (16 bitar)MEDIUMINT
=3 byte (24 bitar)INT
=4 byte (32 bitar)BIGINT
=8 byte (64 bitar).
Längden anger bara hur många tecken som ska fyllas när du väljer data med mysql-kommandoradsklienten. 12345 lagrad som int(3)
kommer fortfarande att visas som 12345, men om det lagrades som int(10)
det skulle fortfarande visas som 12345, men du skulle ha möjlighet att fylla på de första fem siffrorna. Till exempel, om du lagt till ZEROFILL
det skulle visas som 0000012345.
... och det maximala värdet blir 2147483647 (signerad) eller 4294967295 (osignerad)