MySQL管理與優化(2):數據類型

數據類型

    1. 整數:

    

  • 若實際值超出對應類型範圍,則會出現"Out of range"錯誤;整數類型一般會指定顯示寬度,如int(5),不指定默認int(11), 若實際值不滿改寬度則會自動前面補0(zerofill)。

    2.浮點數:

   

   3.定點數類型與位類型:

      

  • 定點數在MySQL中以字符串的形式存儲,比浮點數更精確,可用於表示貨幣等高精度數據。
  • 浮點和定點數均可以(M,D)方式來表示,M表示顯示M位數字(整數位+小數位),D位位於小數點後面,M和D又稱爲精度標度
  • 定點數默認默認精度爲(10, 0), 超過精度會報錯;而浮點數則根據實際值來顯示。
  • 對於BIT(M)位類型,M取值爲1~64,默認爲1,表示存放的二進制位數,實際值超過範圍,則插入失敗。

   4.日期時間類型(MySQL5.0):

   

  • 對於TIMESTAMP, 表中第一個TIMESTAMP類型的字段的默認值爲CURRENT_TIMESSTAMP, 且一張表中僅有一個字段默認值能夠爲CURRENT_TIMESSTAMP。
  • TIMESTAMP會與時區相關,存取都會通過本地時區轉換,因此不一樣時區看到的日期時間會不一樣。
  • 存儲時期時間時,對應的轉換規則爲:

    

    

    

   5.字符串類型(MySQL5.0)

   

1.CHARVARCHAR html

  • CHAR長度不可變,範圍爲0~255, VARCHAR長度可變, 範圍爲0-65535;
  • 檢索數據時,CHAR去除尾部的空格,VARCHAR保留尾部的空格

2.BINARYVARBINARY mysql

  • 相似CHAR與VARCHAR, 但BINARY存儲二進制字符串,當插入數據不足指定長度時,右邊填充'\0'。

3.ENUM sql

  • ENUM類型的字段,其值範圍在建立表時指定,1~255個成員存儲1個字節,255~65535個成員存儲2個字節,如:

      

4.SET ui

  • 與ENUM類型,其成員數爲1~64,但其插入數據時,能夠一次選多個值,有點checkbox的味道。

其餘數據類型能夠細查MySQL官方文檔: spa

http://dev.mysql.com/doc/refman/5.7/en/data-types.html htm

MySQL數據類型及存儲要求: rem

http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html 文檔

不吝指正。 字符串

相關文章
相關標籤/搜索