MYSQL でテーブルを作成するとき、よく int(10) を使用することがありますが、この 10 は正確には何を意味するのでしょうか? varchar(10) の 10 との違いは何ですか?
整数データの場合、mysql は型名の後の括弧内の表示幅の指定をサポートしています。表示幅は通常、ゼロフィルで使用されます。ゼロフィルはその名の通り、0で埋められています。表示桁数が足りない場合は0パディングを使用してください。
zerofillを一緒に使用しない場合、mysqlで表示幅を設定しても効果はありません
テーブルを作成します
CREATE TABLE `t1` ( `id1` int(3) unsigned zerofill NOT NULL DEFAULT '000', `id2` int(3) unsigned zerofill NOT NULL DEFAULT '000' ) ENGINE=InnoDB DEFAULT CHARSET=utf8
データを挿入テスト
INSERT INTO `t1`(`id1`,`id2`) VALUES(123456,12);