Я использую int (255) в mysql как мой id. Это достаточно долго? Если бы я получил около 1 000 000 записей... Спасибо.
Что такое MAX-номер, если я храню int (255) в MySQL?
Ответ 1
Что-то, возможно, просто преобразует это в int(11)
для вас. Поскольку вы не можете иметь 255 видимых цифр в int
, максимальное значение будет 2147483647
.
Если вам нужно больше, вы можете установить его без знака , since I'm assuming you have no negative ids and then you can have up to
4294967295`.
Если у вас когда-либо будет более 4 миллиардов записей (очень маловероятно, если вы сейчас на 1 миллион), вместо этого вы можете использовать bigint
, что позволяет хранить номера до 18446744073709551615
при стоимости большего объема памяти, конечно.
Ответ 2
-2147483648 до 2147483647 в соответствии с docs для подписанного 32-битного целочисленного значения
255 - это просто ширина дисплея и не влияет на диапазон значений
Ответ 3
В INT
в mysql
используется 4-байтовая память и варьируется от -2147483648 до 2147483647. Если вы используете unsigned int, диапазон от 0 до 4294967295.
Ответ 4
Если не зарегистрировано, от 0 до 4 294 967 295, так что это больше, чем просто.
Дополнительная информация в mysql docs.
Ответ 5
Смотрите этот блог.
SELECT ~0 as max_bigint_unsigned
, ~0 >> 32 AS max_int_unsigned
, ~0 >> 40 AS max_mediumint_unsigned
, ~0 >> 48 AS max_smallint_unsigned
, ~0 >> 56 AS max_tinyint_unsigned
, ~0 >> 1 AS max_bigint_signed
, ~0 >> 33 AS max_int_signed
, ~0 >> 41 AS max_mediumint_signed
, ~0 >> 49 AS max_smallint_signed
, ~0 >> 57 AS max_tinyint_signed
\G
*************************** 1. row ***************************
max_bigint_unsigned: 18446744073709551615
max_int_unsigned: 4294967295
max_mediumint_unsigned: 16777215
max_smallint_unsigned: 65535
max_tinyint_unsigned: 255
max_bigint_signed: 9223372036854775807
max_int_signed: 2147483647
max_mediumint_signed: 8388607
max_smallint_signed: 32767
max_tinyint_signed: 127
1 row in set (0.00 sec)