濮阳杆衣贸易有限公司

主頁 > 知識庫 > MySQL使用TEXT/BLOB類型的知識點詳解

MySQL使用TEXT/BLOB類型的知識點詳解

熱門標簽:上海市三維地圖標注 機器人打電銷電話 電話機器人是電腦呼號嗎 400電話到哪辦理優(yōu)惠 南寧外呼系統(tǒng)招商 云南大數(shù)據(jù)外呼系統(tǒng) 博樂電銷機器人 鄭州網(wǎng)絡(luò)外呼系統(tǒng)價錢 怎么更改高德地圖標注

一、TEXT和BLOB的區(qū)別

TEXT和BLOB家族之間僅有的不同是BLOB類型存儲的是二進制數(shù)據(jù),沒有排序規(guī)則或字符集,而TEXT類型有字符集或排序規(guī)則。說白了如果要儲存中文則選擇TEXT。

二、默認值問題

Strict Mode下不能設(shè)置默認值,否則會報can't have a default value錯:

mysql> create table `test`.`text_blob`( 
 -> `a_text` text DEFAULT ' ' , 
 -> `b_blob` blob 
 -> );
ERROR 1101 (42000): BLOB/TEXT column 'a_text' can't have a default value

原因:https://www.jb51.net/article/181667.htm

select @@sql_mode;//查看模式

trict Mode下有以下限制:

1).不支持對not null字段插入null值

2).不支持對自增長字段插入”值,可插入null值

3).不支持 text 字段有默認值

三、排序

MySQL對TEXT和BLOB列進行排序與其他類型不同:只對每個列的最前max_sort_length字節(jié)而不是整個字符串排序。
默認是1024,可以通過配置文件修改。

mysql> SHOW VARIABLES LIKE 'max_sort_length';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_sort_length | 1024 |
+-----------------+-------+
1 row in set (0.00 sec)

四、創(chuàng)建前綴索引

通常最好設(shè)置開始的部分字符作為索引,這樣可以大大節(jié)約索引空間,從而提高索引效率。

alter table table1 add key (text1(1024));

知識點擴展:

MySQL字段設(shè)計規(guī)范避免使用TEXT/BLOB數(shù)據(jù)類型

一、說明

假期有時間可以多去看看一些表的設(shè)計,發(fā)現(xiàn)了不少問題,老系統(tǒng)上過百的字段,里面含有大量的mediumtext,不到500萬的數(shù)據(jù)量,開發(fā)規(guī)范中有要求表設(shè)計不要超過500萬數(shù)據(jù)量。查看了表占用的磁盤空間120G,毫無疑問是大表,當初設(shè)計的時候就沒有考慮過設(shè)計。一句話上線能用就行,管他呢。

二、MySQL規(guī)范

1、單表不要超過500萬條記錄,同時評估單表所占用磁盤空間不要超過50G,否則考慮優(yōu)化、分表等。

2、禁用text字段類型,如果必須的用,也需要單獨設(shè)計表。

三、禁用text字段類型原因

1、性能很差,排序等操作時,就不能使用內(nèi)存臨時表,必須使用磁盤臨時表進行。

2、TEXT或BLOB類型只能使用前綴索引,MySQL對索引字段長度是有限制的。

四、解決辦法

定好規(guī)范,嚴格執(zhí)行(執(zhí)行很難),一兩個DBA面對幾十上百的業(yè)務(wù)系統(tǒng),幾萬個表,上百萬的字段通過每一個表和字段人工審核是不可能完成的,最終還是要靠智能化的審核系統(tǒng)!

到此這篇關(guān)于MySQL使用TEXT/BLOB類型的知識點詳解的文章就介紹到這了,更多相關(guān)MySQL使用TEXT/BLOB類型的幾點注意內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL中TEXT與BLOB字段類型的區(qū)別

標簽:恩施 白銀 寧夏 益陽 秦皇島 杭州 定西 澳門

巨人網(wǎng)絡(luò)通訊聲明:本文標題《MySQL使用TEXT/BLOB類型的知識點詳解》,本文關(guān)鍵詞  MySQL,使用,TEXT,BLOB,類型,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MySQL使用TEXT/BLOB類型的知識點詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于MySQL使用TEXT/BLOB類型的知識點詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    左贡县| 大宁县| 九寨沟县| 大邑县| 寻乌县| 浠水县| 沙坪坝区| 合阳县| 闸北区| 莱阳市| 大连市| 开封县| 开化县| 恩施市| 清流县| 淅川县| 堆龙德庆县| 潞西市| 澎湖县| 巢湖市| 化州市| 云安县| 九江市| 察哈| 宜宾市| 徐闻县| 元江| 长垣县| 康马县| 同江市| 平顶山市| 墨脱县| 四会市| 咸阳市| 淅川县| 沅江市| 察雅县| 铜川市| 拜泉县| 双鸭山市| 寿阳县|