http://dev.mysql.com/doc/を参照してくださいrefman / 8.0 / en / neuro-types.html
-
INT
4バイトの符号付き整数です。 -
BIGINT
8バイトの符号付き整数です。
それらはそれぞれ、それぞれのバイト数に格納できる値よりも多くも少なくも受け入れません。これは、INT
に2つの値があることを意味します およびBIGINT
の2つの値 。
INT(20)
の20 およびBIGINT(20)
ほとんど何も意味しません。表示幅のヒントです。ストレージや、列が受け入れる値の範囲とは何の関係もありません。
実際には、ZEROFILL
にのみ影響します。 オプション:
CREATE TABLE foo ( bar INT(20) ZEROFILL );
INSERT INTO foo (bar) VALUES (1234);
SELECT bar from foo;
+----------------------+
| bar |
+----------------------+
| 00000000000000001234 |
+----------------------+
MySQLユーザーがINT(20)
を見るのは、よくある混乱の原因です。 サイズ制限であると想定します。これはCHAR(20)
に似ています。 。そうではありません。