在排查公司專案業務邏輯的時候,見到了陌生的字眼,如下圖
順著關鍵字BLOB搜尋,原來是Mysql儲存的一種型別,從很多文章下了解到如下資訊
瞭解
MySQL中,BLOB欄位用於儲存二進位制資料,是一個可以儲存大量資料的容器,它能容納不同大小的資料。
MySQL的四種BLOB型別
- 型別 大小(單位:位元組)
- TinyBlob 最大 255
- Blob 最大 65K
- MediumBlob 最大 16M
- LongBlob 最大 4G
BLOB與TEXT的區別
一般在儲存少量字串的時候,我們會選擇CHAR或者VARCHAR,而在儲存較大文字時,通常會選擇使用TEXT或者BLOB。二者之間的主要差別是BLOB能用來儲存二進位制資料,比如照片;而TEXT只能儲存字元資料,比如一遍文章或日記。TEXT和BLOB中又分別包括TEXT,MEDIUMTEXT,LONGTEXT和BLOB,MEDIUMBLOB,LONGBLOB三種不同的型別,他們之間的主要區別是儲存文字長度不用和儲存位元組不用,使用者應該根據實際情況選擇能夠滿足需求的最小儲存型別。
BLOB和TEXT值會引起一些效能問題,特別是執行了大量的刪除操作時。
刪除操作會在資料庫表中留下很大的“空洞”,以後要填入這些“空洞”的記錄在插入的效能上會有影響。為了提高效能,建議定期使用OPTIMEIZE TABLE功能對這類表進行碎片整理,避免因為“空洞”導致效能問題。
詳細說明:https://blog.csdn.net/weixin_36910300/article/details/79104536
效能影響:https://blog.csdn.net/zhao_6666/article/details/79132285
將BLOB轉化為VARCHAR
select CAST(content AS CHAR(10000) CHARACTER SET utf8) from t_bonus_code_log
https://blog.csdn.net/qjc_501165091/article/details/51226018 原生的寫入與讀取