MySQL: bigint Vs int

j'ai utilisé int(10) et je viens de remarquer que Wordpress utilise bigint(20) - Qu'est-ce qui est différent d'utiliser bigint(20) et int (10) pour id auto increment? Laquelle dois-je utiliser pour la colonne id?

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

Et

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

Merci.

40
demandé sur laukok 2011-01-22 20:38:10

2 réponses

la différence est purement dans la valeur maximale qui peut être stockée (18.446.744.073.709.551.615 pour le bigint (20) et 4.294.967.295 pour l'int(10), je crois), selon les détails sur le MySQL Types Numériques page de manuel.

soit dit en passant, l'utilisation de (20) et (10) est en grande partie sans importance à moins que vous utilisiez ZEROFILL. (c'est à dire: Il ne fait pas changer la taille du nombre stocké - c'est tout le type.)

Cependant, en termes pratiques, il est à noter que vous n'êtes pas susceptible d'atteindre l'une de ces limites dans un avenir proche, sauf si vous êtes un vraiment blogueur actif.

61
répondu John Parker 2011-01-22 22:30:29

la seule différence est la portée du type. INT est un long 32 bits alors que BIGINT est 64-bit long, donc il peut stocker des nombres beaucoup plus grands comme INT).

Voici une liste complète des types entiers MySQL: http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

10
répondu Crozin 2011-01-22 17:41:21