Tinyint
Die kleinste Speichergrösse für Zahlen ist der sogenannte Tinyint. Ein Tinyint ist genau ein Byte gross – was hoffentlich jetzt keine Überraschung ist. Wie Wiederholen: ein Byte hat 8 Bits. Jedes Bit hat 2 Speichermöglichkeiten. Man rechnet also 2^8=256 Möglichkeiten. Entsprechend kann der Tinyint alle Zahlen von 0 bis 255 darstellen. Es sind nur positive Zahlen möglich. Dieser Typ von Int wird aufgrund seiner Einschränkung (nur positive Zahlen möglich) heutzutage sehr selten oder überhaupt nie benutzt.
Smallint
Die nächste Grösse ist der smallint. Er ist genau 2 Byte gross. Doppelt so gross wie der Vorgänger. Wer jetzt erwartet, dass man also Zahlen bis 510 speichern kann – der irrt sich. Wir begegnen hier einem exponentiellen Wachstum. 2 Byte haben 16 Bit a 2 Speichermöglichkeiten. Die Anzahl der Optionen errechnet sich daher wie folgt: 2^16= 65’536 Möglichkeiten. Wie wir beim Tinyint gesehen haben, möchten wir auch negative Zahlen speichern können, also verwenden wir die Hälfte (32’768) Möglichkeiten um Minuszahlen zu speichern und die andere Hälfte um positive Zahlen zu speichern – oh und eine Option brauchen wir noch für die 0. Also können wir Zahlen von -32’768 bis + 32’767 speichern. Wer sich jetzt fragt, warum es bei den positiven Zahlen eine weniger ist als bei Minus – eben: wegen der 0.
int
Kommen wir zu der am häufigsten verwendeten Form: int. Dieser Datentyp ist 4 Byte grosse, doppelt so gross wie sein Vorgänger, und er hat entsprechend 2^32 Speichermöglichkeiten, das sind über vier Milliarden Möglichkeiten. Mehr als 2 Milliarden positive und mehr als 2 Milliarden negative. Daher ist dies der meistverwendete Typ, denn es gibt nur wenig Fälle, in denen noch grössere Zahlen abgespeichert werden müssen.
bigint
Aber ein paar Gelegenheiten mag es ja noch geben, also machen wir noch bigint mit 8 Byte und, ja, 2^64 anyone? Ich muss kurz Googeln wie diese Zahl heist^^ Trillionen genau. Also weit über 18 Trillionen Möglichkeiten. 9 Trillionen Positive und 9 Trillionen Negative.