MySQL數據庫(十一)——數據類型(4)二進制

MySQL BIT、BINARY、VARBINARY、BLOB(二進制類型)

MySQL?支持兩類字符型數據:文本字符串和二進制字符串。上節《MySQL數據庫(十一)——數據類型(3)字符串》我們講了文本字符串,這節我們來講解二進制字符串。

二進制字符串類型有時候也直接被稱為“二進制類型”。

MySQL 中的二進制字符串有?BITBINARYVARBINARYTINYBLOBBLOBMEDIUMBLOB?和?LONGBLOB

下表中列出了 MySQL 中的二進制數據類型,括號中的M表示可以為其指定長度。

MySQL 中的二進制數據類型

BIT 類型

位字段類型。M 表示每個值的位數,范圍為 1~64。如果 M 被省略,默認值為 1。如果為 BIT(M) 列分配的值的長度小于 M 位,在值的左邊用 0 填充。例如,為 BIT(6) 列分配一個值 b'101',其效果與分配 b'000101' 相同。

BIT 數據類型用來保存位字段值,例如以二進制的形式保存數據 13,13 的二進制形式為 1101,在這里需要位數至少為 4 位的 BIT 類型,即可以定義列類型為 BIT(4)。大于二進制 1111 的數據是不能插入 BIT(4) 類型的字段中的。

提示:默認情況下,MySQL 不可以插入超出該列允許范圍的值,因而插入數據時要確保插入的值在指定的范圍內。

BINARY 和 VARBINARY 類型

BINARY 和 VARBINARY 類型類似于 CHAR 和 VARCHAR,不同的是它們包含二進制字節字符串。使用的語法格式如下:

列名稱 BINARY(M) 或者 VARBINARY(M)

BINARY 類型的長度是固定的,指定長度后,不足最大長度的,將在它們右邊填充 “\0” 補齊,以達到指定長度。例如,指定列數據類型為 BINARY(3),當插入 a 時,存儲的內容實際為 “\a0\0”,當插入 ab 時,實際存儲的內容為“ab\0”,無論存儲的內容是否達到指定的長度,存儲空間均為指定的值 M。

VARBINARY 類型的長度是可變的,指定好長度之后,長度可以在 0 到最大值之間。例如,指定列數據類型為 VARBINARY(20),如果插入的值長度只有 10,則實際存儲空間為 10 加 1,實際占用的空間為字符串的實際長度加 1。

BLOB 類型

BLOB 是一個二進制的對象,用來存儲可變數量的數據。BLOB 類型分為 4 種:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB,它們可容納值的最大長度不同,如下表所示。

BLOB類型的長度

BLOB 列存儲的是二進制字符串(字節字符串),TEXT 列存儲的是非進制字符串(字符字符串)。BLOB 列是字符集,并且排序和比較基于列值字節的數值;TEXT 列有一個字符集,并且根據字符集對值進行排序和比較。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,578評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,701評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,691評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,974評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,694評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,026評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,015評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,193評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,719評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,442評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,668評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,151評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,846評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,255評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,592評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,394評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容

  • 1、MySQL 數據類型 MySQL中定義數據字段的類型對你數據庫的優化是非常重要的。 MySQL支持多種類型,大...
    garvin閱讀 558評論 0 1
  • 計算機誕生后,數據開始在計算機中存儲并計算,并設計出了數據庫系統,數據庫系統解決的問題:持久化存儲,優化讀寫,保證...
    LittlePy閱讀 785評論 0 0
  • 本文基于MySQL5.6版本進行描述從大的方面來講,MySQL的數據類型分為4種 數值類型 日期和時間 字符串類型...
    黑哥兒666閱讀 768評論 0 0
  • 概述 二進制字符串一般用于存儲二進制的大對象,二進制字符串類型有BIT、BLOB、BINARY和VARBINARY...
    YouMyGod閱讀 592評論 0 0
  • 錢鐘書先生說快樂是屬于精神層面的,絕非是由物質所決定的。有些人住有豪宅,出有豪車,穿有名衣,然而他們并非快樂...
    d10533a3959d閱讀 309評論 0 1