MySQL基礎(三):數據類型

  • 本博客是《MySQL基礎》系列博客的第三部分,主要介紹MySQL中的數據類型
  • 本博客既爲方便自己查看複習而作,亦爲你而作,望能有所裨益
  • 學習交流請聯繫[email protected]

數據類型

  • 每門語言都有屬於自己的數據類型,大同小異罷了。
  • 如下圖紅色方框區域,就是數據類型選擇及展示之處。
    在這裏插入圖片描述
  • 下面我們就逐一介紹下一些常用的數據類型。

數值型數據

在這裏插入圖片描述

整數型數據

類型 大小 範圍(有符號) 範圍(無符號) 用途
TINYINT 1字節 [-128,127] [0,255] 小整數值
SMALLINT 2字節 [-32768,32767] [0,65535] 大整數值
MEDIUMINT 3字節 [-8388608,8388607] [0,4294967295] 大整數值
INT 4字節 [-2147483648,2147483647] [0,4294967295] 大整數值
BIGINT 8字節 極大整數值

浮點型數據

類型 大小 範圍(有符號) 範圍(無符號) 用途
FLOAT 4字節 單精度浮點數值(不精確)
DOUBLE 8字節 雙精度浮點數值(不精確
DECIMAL 對DECIMAL(M,D)而言,字節數=max(M,D)+2 依賴於M和D的值 依賴於M和D的值 浮點數值(精確)

:DECIMAL(M,D)中M表示有多少位數字,D表示其中有多少位小數

字符型數據

在這裏插入圖片描述

字符集和字符序

我們之前在創建數據庫的時候曾經提到要選擇字符集及校驗集,在介紹字符型數據時,我們有必要先簡單介紹一下這個概念:

  • 字符集:character set,是編碼和字符符號的映射集合
  • 字符序:collation,即排序規則,是用於比較字符集中字符的規則集
    在這裏插入圖片描述
    :如果想要區分大小寫,可以選擇後綴爲cs或bin的字符序。
show character set; -- 顯示MySQL所支持的字符集及校驗集
show variables like '%character%'; -- 顯示當前配置中已生效的字符集及校驗集
-- 我們平常遇到的亂碼情況產生的原因就是字符集轉化過程中其設置不一致

在這裏插入圖片描述
以下是MySQL中字符集的轉換流程(圖片來源:《MySQL開心入門》,侵刪)
在這裏插入圖片描述

字符類型

類型 範圍 簡介
CHAR(n) n表示字符數,最多255個字符 定長字符,不同編碼時其字節佔用數不同——latin:1個字符1個字節;gbk:1個字符2個字節;utf8:1個字符3個字節
VARCHAR(n) n表示字符數,最多65535個字符 變長字符,會多一個字節用於表示長度:小於等於255個字符,一個字節表示長度;大於255個字符,兩個字節表示長度
TINYTEXT 0~255字節 存儲空間爲值的長度+2個字節
TEXT 0~65535字節 存儲空間爲值的長度+2個字節
MEDIUMTEXT 0~167772150字節 存儲空間爲值的長度+3個字節
LONGEXT 0~4294967295字節 存儲空間爲值的長度+4個字節

:MySQL中每一行的所有數據合起來的字符長度不能超過65535

二進制數據

顧名思義,二進制類型就是用來保存二進制數據的數據類型。
在這裏插入圖片描述

類型 簡介
BINARY(M) 字節數爲M,允許長度爲0~M的定長二進制字符串
VARBINARY(M) 允許長度爲0~M的變長二進制字符串,字節數爲值的長度加1
BLOB 可變長二進制數據,最多 21612^{16}-1 個字節
TINYBLOB 可變長二進制數據,最多255個字節
MEDIUMBLOB 可變長二進制數據,最多 22412^{24}-1 個字節
LONGBLOB 可變長二進制數據,最多 23212^{32}-1 個字節
BIT(M) M位二進制數據,M最大值爲64

日期型數據

在這裏插入圖片描述

類型 大小 範圍 格式 用途
DATE 3字節 1000-01-01 / 9999-12-31 YYYY-MM-DD 日期值
TIME 3字節 -838:59:59 / 838:59:59 HH:MM:SS 時間值或持續時間
YEAR 1字節 1901 / 2155 YYYY 年份值
DATETIME 8字節 1000-01-01 00:00:00 / 9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 時間和日期的混合值
TIMESTAMP 4字節 1970-01-01 00:00:00 / 2038-1-19 11:14:07(北京時間) YYYY-MM-DD HH:MM:SS 時間戳

集合型數據

MySQL中的集合類型主要有兩個:enum 和 set

類型 簡介
enum(‘選項一’,‘選項二’,···) 字符串對象,單選列表其值從允許值列表中選擇,只能選一個值,最多可包含65535個不同的元素
set(‘選項一’,‘選項二’,···) 字符串對象,多選列表,可以選零個或多個值,最多可包含64個不同的成員

:集合型數據設置好後,在如下圖的原始界面並不能直接選擇
在這裏插入圖片描述
此時需要跳轉到表單界面進行相關操作,選擇完成後Apply即可
在這裏插入圖片描述

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