Подтвердить что ты не робот

MySQL тип данных INT (11), тогда как UNSIGNED INT (10)?

в MySQL, если мы создадим поле dataType INT и не укажем ни одной длины/значений, оно автоматически становится int(11), и если мы установим атрибут UNSIGNED или UNSIGNED ZEROFILL, то он превращается в int(10)

Где проходит эта длина (1)?

4b9b3361

Ответ 1

Значение int может быть -2147483648, это 11 цифр, поэтому размер по умолчанию <11 >

unsigned int не позволяет отрицательные числа, поэтому по умолчанию ему нужен только дисплей размер 10

Как видно из приведенной ниже документации, количество бит, необходимое для хранения SIGNED INT и UNSIGNED INT, одинаково, диапазон сохраняемых номеров просто сдвигается:

Неподписанный тип может использоваться для разрешения только неотрицательные числа в столбце или когда вам нужен более высокий верхний числовой диапазон для столбца. Для Например, если столбец INT невозможен, размер диапазона столбцов равен но его конечные точки смещаются от -2147483648 и 2147483647 до 0 и 4294967295.

http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

Ответ 2

Согласно документации, это число - это просто ширина экрана.

Например, INT (4) указывает INT с шириной отображения в четыре цифры.

Ширина экрана не ограничивает диапазон значений, которые могут быть хранится в столбце. Он также не препятствует значениям, превышающим столбец отображаемая ширина отображается правильно. Например, столбец заданный как SMALLINT (3), имеет обычный диапазон SMALLINT -32768 для 32767, а значения вне диапазона, допустимого тремя цифрами, равны отображается полностью, используя более трех цифр.

Ширина экрана по умолчанию для UNSIGNED INT меньше, чем для не UNSIGNED INT просто потому, что вы никогда не будете показывать символ -.

Обратите внимание, что вы все равно можете указать любую ширину экрана. Это только по умолчанию.

Использование термина "цифры" в документации немного вводит в заблуждение здесь.

Ответ 3

Просто выйди, кто-то не совсем понимает ответ Шакти (как я этого не делал). Здесь наглядное представление о том, почему:

 Signed minimum:
 - 2 1 4 7 4 8 3 6 4  8
 1 2 3 4 5 6 7 8 9 10 11

 Unsigned max (also the signed max):
 4 2 9 4 9 6 7 2 9 5
 1 2 3 4 5 6 7 8 9 10