MySQL三大列類型

MySQL三大列類型ide

數值型學習

整型:Tinyintui

   1個字節8個位bit 存貯範圍 0---2^8-  (0--255)spa

0000 0000 =0ci

1111 1111 =2^8-1=255it

計算機爲了表示一個數是負數,會把最高位的(左側)0/1,當符合看class

如爲0是正數,如是1,則是負數二進制

0 0000000   0 1111111 –>0->127im

1 0000000 à -0  1 1111111 à -127      計算機

二進制補碼的問題

如上理解+0 -0,則重複了,浪費一種存儲的可能性。

所以計算機種負數,不是照着「後面的絕對值直接乘以-1獲得的」

負數 = 絕對值-128

 

所以

1111  1111   ----.>-1

1000  0000   ---à-128

 

                      

 

      Smallint

      Mediuint

      Int

      Bigint

分析:

2個字節,16 0-----2^16-1=65535

               -2^15--à+2^15-1,  -32768---à32767

 

通常而言,設某類型N個字節

N字節,8N位。

0------à2^8n-1

-2^(8n-1)---à+2^(8N-1);

 

對於int型:佔得字節越多,存儲的範圍越大

Int系列的聲明時的參數:

M   unsigned     zerofil

學習tinyint的參數並驗證字節的與範圍的關係

Out of range 超出範圍

int 不加特殊說明,默認有符合

#unsigned表示無符號,能夠影響儲存的範圍

#unsigned類型表示無符號

#分析M參數

#zerofill zero 0 fill 填充,

#M必須和zerofill配合纔有意思,不夠位數,用0填充

 

爲何補充到5位,由於M5位,所以Mzerofill配合使用纔有意思。

 

小數(浮點型/定點型)

 

浮點數在計算機裏表示是比較複雜

FloatM,DdecimalM,D

M叫精度----à表明小數的總位數,而D是標度,表明小數位(小數點右邊的位數)

 

 Float6,2)範圍-9999.99-------+9999.99

相關文章
相關標籤/搜索