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

MySQL: bigint Vs int

Я использую int (10) и просто заметил, что Wordpress использует bigint (20). Чем отличается использование bigint (20) и int (10) для автоматического увеличения id? Какой из них следует использовать для столбца id?

`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,

Vs

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,

Спасибо.

4b9b3361

Ответ 1

Разница заключается только в максимальном значении, которое может быть сохранено (18,446,744,073,709,551,615 для bigint (20) и 4,294,967,295 для int (10), я считаю), в соответствии с деталями MySQL Числовые типы.

Кстати, использование (20) и (10) в значительной степени не имеет значения, если вы не используете ZEROFILL. (то есть: он фактически не изменяет размер сохраненного числа - все это относится к типу.)

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

Ответ 2

Единственное различие - это диапазон типа. INT - 32-разрядный, а BIGINT - 64-разрядный, поэтому он может хранить гораздо большие числа, такие как 123456789123456789 (который не может быть сохранен как INT).

Здесь приведен полный список целых типов MySQL: http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html