Почему tinyint не может хранить больше, чем число 255 в MySQL? - PullRequest
4 голосов
/ 24 февраля 2010

Если TINYINT может хранить, например, три символа, почему он не может сохранить до числа 999?

Ответы [ 2 ]

17 голосов
/ 24 февраля 2010

Поскольку он занимает только 8 бит и, следовательно, может кодировать не более 2^8 = 256 значений.

Три символа, которые вы видите в чем-то вроде '123', являются результатом двоичного преобразования в десятичное. Вы не можете хранить здесь произвольные 3 символы.

4 голосов
/ 24 февраля 2010

Это 8 бит, и он может хранить максимальное значение 255. 8 бит имеют 256 возможных состояний, включая ноль.

...