mysql中int、bigint、smallint 和 tinyint的區別詳細介紹

來源:互聯網
上載者:User

最近使用mysql資料庫的時候遇到了多種數位類型,主要有int,bigint,smallint和tinyint。其中比較迷惑的是int和smallint的差別。今天就在網上仔細找了找,找到如下內容,留檔做個總結:
使用整數資料的精確數字資料類型。
bigint
從 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型資料(所有數字)。儲存大小為 8 個位元組。
P.S. 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 位元組。
注釋
在支援整數值的地方支援 bigint 資料類型。但是,bigint 用於某些特殊的情況,當整數值超過 int 資料類型支援的範圍時,就可以採用 bigint。在 SQL Server 中,int 資料類型是主要的整數資料類型。
在資料類型優先次序表中,bigint 位於 smallmoney 和 int 之間。
只有當參數運算式是 bigint 資料類型時,函數才返回 bigint。SQL Server 不會自動將其它整數資料類型(tinyint、smallint 和 int)提升為 bigint。
int(M) 在 integer 資料類型中,M 表示最大顯示寬度。在 int(M) 中,M 的值跟 int(M) 所佔多少儲存空間並無任何關係。和數字位元也無關係 int(3)、int(4)、int(8) 在磁碟上都是佔用 4 btyes 的儲存空間。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.