MySQL 數據類型

一、數據類型是什麼?

  數據類型是指列、存儲過程參數、表達式和局部變量的數據特徵,它決定了數據的存儲格式,代表了不同的信息類型。

  有一些數據是要存儲爲數字的,數字當中有些是要存儲爲整數、小數、日期型等...

 

二、MYSQL常見數據類型

  MySQL支持多種類型,大致可以分爲四類:數值型、浮點型、日期/時間和字符串(字符)類型

 

  1、數值類型

  MySQL支持所有標準SQL數值數據類型。

  這些數值類型包括嚴格數值數據類型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似數值數據類型(FLOAT、REAL和DOUBLE PRECISION)。

  關鍵字INT是INTEGER的同義詞,關鍵字DEC是DECIMAL的同義詞。

  作爲SQL標準的擴展,MySQL也支持整數類型TINYINT、MEDIUMINT和BIGINT。下面的表顯示了需要的每個整數類型的存儲和範圍:

 

  2、 浮點型

  比如,我們發的工資,一般都帶有小數。


  3、日期和時間類型

  表示時間值的日期和時間類型爲DATETIME、DATE、TIMESTAMP、TIME和YEAR。

  每個時間類型有一個有效值範圍和一個"零"值,當指定不合法的MySQL不能表示的值時使用"零"值。

  TIMESTAMP類型有專有的自動更新特性,將在後面描述。

  在生產裏,日期時間型,往往用的比較少,而是用數字類型來取代日期類型!

 

  4  字符串類型

  字符串類型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。該節描述了這些類型如何工作以及如何在查詢中使用這些類型。

  CHAR和VARCHAR類型類似,但它們保存和檢索的方式不同。它們的最大長度和是否尾部空格被保留等方面也不同。在存儲或檢索過程中不進行大小寫轉換。

  BINARY和VARBINARY類類似於CHAR和VARCHAR,不同的是它們包含二進制字符串而不要非二進制字符串。也就是說,它們包含字節字符串而不是字符字符串。這說明它們沒有字符集,並且排序和比較基於列值字節的數值值。

  有4種TEXT類型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。這些對應4種BLOB類型,有相同的最大長度和存儲需求。

 

  ENUM是枚舉類型

  SET是集合類型不同於ENUM類型,它是一個排列組合。假如有abc,它可以選擇a或b或c,也有選擇是ab,ac,bc,也可以選擇abc。


總結

  這些數據類型可以用於數據表或存儲過程或以後的函數中,也就是說只要用到數據類型的時候,可以從我們剛講到的數值型、浮點型、日期/時間和字符串(字符)類型中任意選擇。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章