數據庫——(4)數據類型

所謂數據類型:對數據進行統一分類,從系統的角度出發是爲了能夠統一的方式進行管理,更好的利用有限的空間。
SQL中將數據類型分成三大類:數值類型字符串類型時間日期類型

一、數值類型
都是數值,分爲整數型和小數型:
整數型:考慮節省磁盤空間,系統將整數型細分爲5類
1.Tinyint(常用):迷你整形,使用1個字節存儲,表示的狀態最多爲256種(2^8)。
2.Smallint:小整型,使用2個字節存儲,表示的狀態最多爲65536種(2^16)。
3.Mediumint:中整型,使用3個字節存儲。
4.Int(常用):標準整型,使用4個字節存儲。
5.Bigint:大整形,使用8個字節存儲。
注意:SQL中數值類型都是默認有符號:分正負,有時候需要使用無符號數據需要給數據類型限定,如:int unsigned; –從0開始
小數型:帶有小數點或者範圍超出整型的數值類型。SQL中將小數型分爲兩種:
浮點型:小數點浮動,精度有限,會丟失精度。
定點型:小數點固定,精度固定,不會丟失精度。(不會四捨五入)
浮點型理論分爲兩種精度
float:單精度,佔4個字節存儲數據,精度範圍大概爲7位左右。
double:雙精度,佔8個字節存儲數據,精度範圍大概爲15位左右。
浮點型使用:float 表示沒有小數部分,float(M,D),M代表總長度,D代碼小數長度,M-D代表整數長度。
定點型使用:decimal(M,D)M最大爲65,D最大爲30。

二、時間日期類型
Datetime:時間日期,格式是YYYY-mm-dd HH:ii:ss,表示的範圍是1000年到9999年,但存在0值:0000-00-00 00:00:00
Date:日期,就是Datetime中的date部分
Time:時間(段),指定的某個區間之間,表示時間段。
Timestamp:時間戳,從1970開始的YYYY-mm-dd HH:ii:ss格式。
Year:年份,兩種形式,year(2)表示1970-2069,year(4)表示1900-2156

三、字符串類型
SQL中,將字符串類型分成6類:char,varchar,text,blob,enum,set
定長字符串:char(L),二維表在定義結構時,就確定了最終數據的存儲長度。L代表可以存儲的長度,單位爲字符,最大長度值可以爲255。

變長字符串:varchar(L),在分配空間時,按照最大的空間分配,但實際上最終用了多少是根據具體的數據來確定。
區別:定長的磁盤空間比較浪費,但是效率高;變長磁盤空間比較節省,但是效率低。

文本字符串:根據存儲的數據的格式進行分類:text 和blob
text:存儲文字(二進制數據實際上存儲路徑)
blob:存儲二進制數據(通常不用)

枚舉:enum,事先將所有可能出現的結果都設計好,實際上存儲的數據必須是規定好的數據中的一個。內部存儲是整型表示。
作用:規範數據格式;節省存儲空間(枚舉通常有一個別名:單選框)。

集合:set,實際存儲的是數值,而不是字符串(集合是多選)。
集合中每一個元素都對應一個二進制位。

發佈了38 篇原創文章 · 獲贊 2 · 訪問量 9704
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章