最近在做數據庫表設計的時候,對於多種數字的數據類型的選擇存在很多顧慮,不是很清楚到底如何選擇。總結一下int、bigint、smallint 和 tinyint四種數據類型。
- bigint:從 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型數據(所有數字)。存儲大小為 8 個字節。bigint已經有長度了,在mysql建表中的length,只是用於顯示的位數。
- int:從 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型數據(所有數字)。存儲大小為 4 個字節。int 的 SQL-92 同義字為 integer。
- smallint:從 -2^15 (-32,768) 到 2^15 – 1 (32,767) 的整型數據。存儲大小為 2 個字節。
- tinyint:從 0 到 255 的整型數據。存儲大小為 1 字節。