MySQL 中 bigint、int、mediumint、smallint、tinyint 有符號和無符號的取值范圍


 

想要了解取值范圍首先需要知道的是 bitByte 的概念

bit :位

二進制數系統中,位通常簡寫為 "b",也稱為比特,每個二進制數字 0 或 1 就是一個位(bit)。位是表示信息的最小單位,其中 8 bit 就稱為一個字節(Byte)。

 

Byte :字節

字節(Byte)是用於計量存儲容量的一種計量單位,是計算機中表示存儲空間最基本的容量單位,字節通常簡寫為 "B"。

 

bit 與 Byte

數據存儲是以“字節”(Byte)為單位,數據傳輸大多是以“位”(bit,又名“比特”)為單位,一個位就代表一個 0 或 1(即二進制),每8個位(bit,簡寫為b)組成一個字節(Byte,簡寫為B),是最小一級的信息單位。

 

取值范圍

tinyint、smallint、mediumint、int、bigint 分別占用 1、2、3、4、8字節,使用 8、16、24、32、64 位存儲空間。它們的有符號可以存儲的值的范圍從 -2N-1 到 2N-1-1,其中 N 是存儲空間的位數。

無符號是設置了 unsigned 屬性,表示不允許負值,這大致可以使正數的上限提高一倍。

類型 字節 有符號范圍 無符號范圍
tinyint 1 8 -128 ~ 127 0 ~ 255
smallint 2 16 -215 ~ 215-1 0 ~ 2*215-1
mediumint 3 24 -223 ~ 223-1 0 ~ 2*223-1
int 4 32 -231 ~ 231-1 0 ~ 2*231-1
bigint 8 64 -263 ~ 263-1 0 ~ 2*263-1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM