午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

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

瀏覽:14日期:2023-10-16 11:49:08

一、TEXT和BLOB的區別

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

二、默認值問題

Strict Mode下不能設置默認值,否則會報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字節而不是整個字符串排序。默認是1024,可以通過配置文件修改。

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

四、創建前綴索引

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

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

知識點擴展:

MySQL字段設計規范避免使用TEXT/BLOB數據類型

一、說明

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

二、MySQL規范

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

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

三、禁用text字段類型原因

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

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

四、解決辦法

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

到此這篇關于MySQL使用TEXT/BLOB類型的知識點詳解的文章就介紹到這了,更多相關MySQL使用TEXT/BLOB類型的幾點注意內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 成人高清视频免费观看 | 成人精品视频 | 亚洲高潮 | 久久综合九色 | 在线视频日韩精品 | 午夜毛片在线观看 | 久久久免费高清视频 | 成年网站在线 | 欧美日韩国产91 | 日韩手机在线视频 | 在线观看国产亚洲 | 亚洲欧美在线观看视频 | 色人阁av| 亚洲精品国产精华液 | 亚洲波多野结衣 | 国产精品mv| 国产精品毛片一区视频播 | 国产精品精品软件视频 | 夜夜天天操 | 太骚了全程淫语小说 | 视频1区2区 | 97超碰站 | 日韩国产精品一区二区 | 日本高清视频一区二区 | 久久男人 | 亚洲精品午夜 | 夜夜操天天爽 | 午夜福利毛片 | 日本免费一区二区三区四区 | 日本美女激情 | 国产又大又黄又粗 | 欧美精品在线免费 | 伊人婷婷色 | 欧美一区成人 | 黄色在线观看av | 91黄色免费观看 | 黄色avav| 久久网址 | 性欧美少妇 | av在线资源| 大地资源高清播放在线观看免费 |