2012-07-19 8 views
12

INT(1) - わかりましたが、1は1桁を意味するものではなく、クライアント出力の表示形式のみを表します。INT(1)はMySQLで何を表しますか?

が、これは私がYEARint(1)として、私はまだすべての4つのバイトを参照してください宣言した

意味何をしますか。 INT(1)はどういう意味ですか?

SELECT * FROM TEST_USERDB; 
+----+--------+------+ 
| ID | NAME | YEAR | 
+----+--------+------+ 
| 1 | abcccc | 2012 | 
| 2 | stack | 99 | 
+----+--------+------+ 
+4

http://alexander.kirk.at/2007/08/24/what-does-size-in-intsize-of-mysql-mean/それを説明するのは良い仕事をしていません –

+0

ところで、MySQLは[データ型 'YEAR'](http://dev.mysql.com/doc/refman/5.0/en/year.html)を持っています... – feeela

+0

クライアントアプリケーションは、 'display width'をどのように解釈するのかメタデータ。パラメータはカラムの値を制限しません – a1ex07

答えて

18

unsigned intその INT(1)またはint(10)場合4294967295どんなにの最大値を持っており、4バイトのデータを使用します。

したがって、角括弧内の数字は何を意味していますか?それは表示するためにかなり下に 、表示幅と呼ばれています。ディスプレイの幅は で、1から255です。 のすべての整数値を「表示」する場合は、表示幅を設定できます。行でzerofillを有効にした場合、 フィールドのデフォルト値はint(1)0000000000int(10)となります。

Read more

+1

int(1)で1を意味しますか? – chicharito

+2

もちろん、UNSIGNEDと* ZEROFILLを*整数型で使用する場合にのみ使用されます。私はそれが[ここ](http://everythingmysql.ning.com/profiles/blogs/data-type-confusion-what-is-an)に記載されていることがわかりました。 – Lion