日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

mysql存储blob限制

發布時間:2023/12/15 综合教程 22 生活家
生活随笔 收集整理的這篇文章主要介紹了 mysql存储blob限制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、Mysql存儲類型分類:  

  1、blob:二進制大對象(字節流),可以用來存儲圖片、視頻等,沒有字符集的說法

  2、text:文本大對象(字符流),存儲大型字串,有字符集的說法

  3、二者使用時不能指定默認值,根據實際情況需要修改【max_allowed_packet】系統變量

二、blob、text存儲大小限制:

  1、tinyblob、tinytext最大存儲255字節

  2、blob、text最大存儲65K

  3、mediumblob、mediumtext最大存儲16M

  4、longblob、longtext最大存儲4G

三、測試存儲限制:  

C:UsersAdministrator>mysql
mysql> use test1;
mysql> show tables;
mysql> drop table t1;
mysql> CREATE TABLE t1 (
    ->   id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->   tiny_blob TINYBLOB,
    ->   b_blob BLOB,
    ->   medium_blob MEDIUMBLOB,
    ->   long_blob LONGBLOB
    -> );
mysql> desc t1;
mysql> insert into t1(id) select 1;
mysql> select * from t1;
mysql> select @@global.max_allowed_packet;

#測試tinyblob的存儲限制,看是否只能存儲最大255字節的文件:
mysql> UPDATE t1
    -> SET t1.tiny_blob=LOAD_FILE('D:/Program Files/mysql-5.7.11-winx64/temp/test.255.file')
    -> WHERE t1.id=1;
mysql> UPDATE t1
    -> SET t1.tiny_blob=LOAD_FILE('D:/Program Files/mysql-5.7.11-winx64/temp/test.256.file')
    -> WHERE t1.id=1;
ERROR 1406 (22001): Data too long for column 'tiny_blob' at row 1

#blob的存儲限制是否是65k:
mysql> UPDATE t1
    -> SET t1.b_blob=LOAD_FILE('D:/Program Files/mysql-5.7.11-winx64/temp/test.65560.file')
    -> WHERE t1.id=1;
ERROR 1406 (22001): Data too long for column 'b_blob' at row 1
#可見,65559字節也是無法存儲的。那么blob到底能存儲多少字節呢?答案是65536-1=65535字節,也就是64K少1字節。

四、總結:

  1、tinyblob、tinytext最大存儲為255字節(2的8次方-1)

  2、blob、text最大存儲限制為64K-1(2的16次方-1)

  3、mediumblob、mediumtext最大存儲限制為16M-1(2的24次方-1)

  4、longblob、longtext最大存儲限制4G-1(2的32次方-1)

總結

以上是生活随笔為你收集整理的mysql存储blob限制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。