mysql longblob 大小存储多大

& & 在使用mysql的过程中,有个问题就是mysql的优化,mysql中longblob字段在5.5版本中默认的为1M。& & 想改变这个问题,需要注意几点:& & com.mysql.jdbc.PacketTooBigException: Packet for query is too large (2054817 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.& & 原因:myslq默认配置最小的需要更改 :在mysql.ini中配置参数(max_allowed_packet=1024M) ;& & 但是在[client]和[mysql]部分添加始终没有效果,貌似是客户端读取的参数。所以需要注意这点。& & 您可能感兴趣的文章:什么是blob,mysql blob大小配置介绍php中将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理)java实现插入mysql二进制文件,blob类型,遇到问题及解决办法与MSSQL对比学习MYSQL的心得(四)--BLOB数据类型& & QQ空间
百度搜藏更多& & Tags:Mysql longblob字段 插入数据& & 复制链接收藏本文打印本文关闭本文返回首页& & 上一篇:MySQL外键创建失败1005原因汇总& & 下一篇:21分钟 MySQL 入门教程& & 相关文章安装mysql noinstall zip版ERROR ): The used SELECT statements have a differ深入理解where 1=1的用处mysql存储过程中使用游标的实例基于SQL中的数据查询语句汇总mysql高效导数据的方法讲解mysql 教程 存储过程mysql服务启动不了解决方案教您修复mysql数据库的方法深入解析mysql.sock不见的问题& & 文章评论& & 最 近 更 新& & MySQL 编码机制解析mysqldump的delay-insert选项JDBC数据库的使用操作总结MySQL数据库中删除重复记录的方法总结[推Mysql两种情况下更新字段中部分数据的方法教您修复mysql数据库的方法101个MySQL的配置和优化的提示MySQL 存储过程传参数实现where id in(1,深入mysql YEAR() MONTH() DAYOFMONTH()日linux Xtrabackup安装及使用方法& & 热 点 排 行& & mysql安装图解 mysql图文安装教程超详细mysql left join,right joCan''t connect to MySQL serverMysql命令行导入sql数据MYSQL 数据库导入导出命令Mysql字符串截取函数SUBSTRING的MySQL数据库备份与恢复方法MySQL server has gone away 问题windows下mysql忘记root密码的解MySQL日期数据类型、时间类型使用
声明:该文章系网友上传分享,此内容仅代表网友个人经验或观点,不代表本网站立场和观点;若未进行原创声明,则表明该文章系转载自互联网;若该文章内容涉嫌侵权,请及时向
上一篇:下一篇:
相关经验教程
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
论文写作技巧C++学习(21)
在Mysql中用 LONGBLOB 类型存储二进制数据
作者:天涯 来源:中国自学编程网&发布日期:
//需要设置为你自己的&
//在DBMS中线要创建数据库test,table bintest,data字段数据类型用LONGBLOB即可测试&
//测试文件c:\\test.iso,你可以找任何一个文件修改为即可,我找的是一个exe程序,修改为test.iso而已&
//最大测试过加入文件大小为650M(一个正真的iso文件)&
//注意:还要修改my.ini文件中的max_allowed_packet字段,我设置的是&
//max_allowed_packet = 1024M&
//#define host &localhost& //mysql server&
//#define username &root&&
//#define password &674800&&
//#define database &test&&
//int port = 3306;&
// Mysql3.cpp : Defines the entry point for the console application.&
#include &stdafx.h&&
#include &Winsock2.h&&
#include &mysql.h&&
#include &string.h&&
#include &stdio.h&&
#include &stdlib.h&&
#include &sys/types.h&&
#include &sys/stat.h&&
#include &fcntl.h&&
#pragma comment(lib,&libmysql.lib&)&
#define INSERT_QUERY &INSERT INTO bintest(id, data) VALUES(NULL, ?)&&
#define host &localhost& //mysql server&
#define username &root&&
#define password &674800&&
#define database &test&&
int port = 3306;&
int get_file_size(char *path, off_t *size)&
struct stat file_&
if(stat(path, &file_stats))&
return -1;&
*size = file_stats.st_&
return 0;&
void test()&
MYSQL_BIND bind[1];&
char* pos = NULL;&
char* filename = &c:\\test.iso&;&
if ((get_file_size(filename, &size)) == -1) //得到文件的大小&
perror(&get file size& );&
if ((pos = (char *)malloc(sizeof(char)*(size+1))) == NULL)&
perror(&malloc buf& );&
if ((fp = fopen(filename, &rb& )) == NULL) //读文件&
perror(&fopen file& );&
if ((fread(pos, 1, size, fp)) & 0) //读文件失败&
perror(&fread file& );&
MYSQL *mysql = mysql_init(NULL); //mysql 初始化&
if (!mysql)&
if (!mysql_real_connect(mysql,host,username,password,&test&,port,NULL,0))//链接服务器&
int ret = mysql_errno(mysql);&
mysql_close(mysql);&
MYSQL_STMT *stmt = mysql_stmt_init(mysql);&
if (!stmt)&
fprintf(stderr, & mysql_stmt_init(), out of memory\n&);&
if (mysql_stmt_prepare(stmt, INSERT_QUERY, strlen(INSERT_QUERY)))&
fprintf(stderr, &\n mysql_stmt_prepare(), INSERT failed&);&
fprintf(stderr, &\n %s&, mysql_stmt_error(stmt));&
memset(bind, 0, sizeof(bind));&
//bind[0].buffer_type= MYSQL_TYPE_STRING;&
//bind[0].buffer_type = MYSQL_TYPE_LONG;&
bind[0].buffer =&
//bind[0].buffer_type = MYSQL_TYPE_TINY;&
bind[0].buffer_type = MYSQL_TYPE_BLOB;&
bind[0].length= &&
bind[0].is_null= 0;&
/* Bind the buffers */&
if (mysql_stmt_bind_param(stmt, bind))&
fprintf(stderr, &\n param bind failed&);&
fprintf(stderr, &\n %s&, mysql_stmt_error(stmt));&
int rc =0;&
/* Supply data in chunks to server */&
if (mysql_stmt_send_long_data(stmt,0, pos, size))&
fprintf(stderr, &\n send_long_data failed&);&
fprintf(stderr, &\n %s&, mysql_stmt_error(stmt));&
// pos +=&
/* Supply the next piece of data */&
if (mysql_stmt_send_long_data(stmt,0, pos, size))&
fprintf(stderr, &\n send_long_data failed&);&
fprintf(stderr, &\n %s&, mysql_stmt_error(stmt));&
/* Now, execute the query */&
if (mysql_stmt_execute(stmt))&
fprintf(stderr, &\n mysql_stmt_execute failed&);&
fprintf(stderr, &\n %s&, mysql_stmt_error(stmt));&
int main()&
//sleep(1);&
return 0;&
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:37024次
排名:千里之外
转载:29篇
(13)(11)(7)(2)bovxiu2 的BLOG
用户名:bovxiu2
文章数:71
访问量:77686
注册日期:
阅读量:5863
阅读量:12276
阅读量:343077
阅读量:1044143
[匿名]51cto游客:
51CTO推荐博文
MySQL有四种BLOB类型:
  &TINYBLOB:仅255个字符
  &BLOB:最大限制到65K字节
  &MEDIUMBLOB:限制到16M字节
LONGBLOB:可达4GB&
可是当我储存的图片 超过1M后就报错
MySQL的一个系统参数:max_allowed_packet,其默认值为M),
查询:show VARIABLES like '%max_allowed_packet%';
修改此变量的值:MySQL安装目录下的my.ini文件中的[mysqld]段中的"max_allowed_packet = 1M",如更改为4M(或更大,如果没有这行内容,增加一行),保存,重起MySQL服务。现在可以load大于1M的文件了。
了这篇文章
类别:┆阅读(0)┆评论(0)Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理)
今天给大家分享的是由图老师小编精心为您推荐的Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理),喜欢的朋友可以分享一下,也算是给小编一份支持,大家都不容易啊!
在DBMS中线要创建数据库test,table bintest,data字段数据类型用LONGBLOB即可测试 //测试文件c:test.iso,你可以找任何一个文件修改为即可,我找的是一个exe程序,修改为test.iso而已 //最大测试过加入文件大小为650M(一个正真的iso文件) //注意:还要修改my.ini文件中的max_allowed_packet字段,我设置的是 代码如下: //max_allowed_packet = 1024M //#define host "localhost" //mysql server //#define username "root" //#define password "674800" //#define database "test" //int port = 3306; // Mysql3.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include Winsock2.h #include mysql.h #include string.h #include stdio.h #include stdlib.h #include sys/types.h #include sys/stat.h #include fcntl.h #pragma comment(lib,"libmysql.lib") #define INSERT_QUERY "INSERT INTO bintest(id, data) VALUES(NULL, ?)" #define host "localhost" //mysql server #define username "root" #define password "674800" #define database "test" int port = 3306; int get_file_size(char *path, off_t *size) { struct stat file_ if(stat(path, &file_stats)) return -1; *size = file_stats.st_ return 0; } void test() { MYSQL_BIND bind[1];
char* pos = NULL; off_ FILE* char* filename = "c:test.iso"; if ((get_file_size(filename, &size)) == -1) //得到文件的大小 { perror("get file size" ); exit(1); } if ((pos = (char *)malloc(sizeof(char)*(size+1))) == NULL) { perror("malloc buf" ); exit(1); } if ((fp = fopen(filename, "rb" )) == NULL) //读文件 { perror("fopen file" ); exit(1); } if ((fread(pos, 1, size, fp))
0) //读文件失败 { perror("fread file" ); exit(1); } MYSQL *mysql = mysql_init(NULL); //mysql 初始化 if (!mysql)
if (!mysql_real_connect(mysql,host,username,password,"test",port,NULL,0))//链接服务器 { int ret = mysql_errno(mysql); mysql_close(mysql);
} MYSQL_STMT *stmt = mysql_stmt_init(mysql); if (!stmt) { fprintf(stderr, " mysql_stmt_init(), out of memoryn"); exit(0); } if (mysql_stmt_prepare(stmt, INSERT_QUERY, strlen(INSERT_QUERY))) { fprintf(stderr, "n mysql_stmt_prepare(), INSERT failed"); fprintf(stderr, "n %s", mysql_stmt_error(stmt)); exit(0); } memset(bind, 0, sizeof(bind)); //bind[0].buffer_type= MYSQL_TYPE_STRING; //bind[0].buffer_type = MYSQL_TYPE_LONG; bind[0].buffer = //bind[0].buffer_type = MYSQL_TYPE_TINY; bind[0].buffer_type = MYSQL_TYPE_BLOB; bind[0].length= & bind[0].is_null= 0; /* Bind the buffers */ if (mysql_stmt_bind_param(stmt, bind)) { fprintf(stderr, "n param bind failed"); fprintf(stderr, "n %s", mysql_stmt_error(stmt)); exit(0); } int rc =0; /* Supply data in chunks to server */ if (mysql_stmt_send_long_data(stmt,0, pos, size)) { fprintf(stderr, "n send_long_data failed"); fprintf(stderr, "n %s", mysql_stmt_error(stmt)); exit(0); } // pos += /* Supply the next piece of data */ if (mysql_stmt_send_long_data(stmt,0, pos, size)) { fprintf(stderr, "n send_long_data failed"); fprintf(stderr, "n %s", mysql_stmt_error(stmt)); exit(0); } /* Now, execute the query */ if (mysql_stmt_execute(stmt)) { fprintf(stderr, "n mysql_stmt_execute failed"); fprintf(stderr, "n %s", mysql_stmt_error(stmt)); exit(0); } } int main() { test(); //sleep(1); return 0; }
来源:/n/2950.html
热门搜索:
如何让偏色照片变清晰 PS照片美化教程
PS给玫瑰园的美女加上甜美的粉红色教程
怎么设置、修改、更换PPT背景
ps教程 使用PS对图片后期处理成哥特风效果
为了让自己的皮肤更加的白嫩,很多女性会买一大堆的美白产品,但是其实我们很多时候可以自制美白的面膜,更加的天然无刺激,下面就给大家详细的介绍一下自制美白面膜的方法吧
美白是女性永恒都追求的真理,那么,哪些美白的手段能做到事半功倍呢?相信很多的女性因为美白而美白,却从来不去寻找规律和方法,下面就给大家介绍一下美白的方法。
女性用护肤品是一件非常正常的事情,但是很多女性用护肤品的时候是非常随意的,顺序压根就不会去在意,这种行为对皮肤的保养并不是非常好,下面就介绍护肤品的使用顺序。
提起护肤,总觉得这事儿不关男生的事,属于女生的事,而且帅哥们顶多用用洗面奶,擦擦乳霜,仅此而已。完全不知道该怎样正确清洁保养肌肤,也不清楚自己到底该用哪种护肤用品,男士护肤品哪个牌子好?
微博是我们现在相当流行的社交软件,现在大家也很喜欢用表情包进行交流,也已经成为了一种流行文化。最近微博也出了一组很可爱的表情包,下面就给大家来介绍微博新出的表情有哪些吧。
今日北京时间凌晨苹果召开新品发布会,iPhone 7和iPhone 7 Plus正式登台亮相,中国在首发之列,iPhone7起售价为5388元,iPhone7 Plus起售价为6388元,iphone7各项性能创新升级也让那些果粉们早就跃跃欲试了吧,而此次中国大陆的iPhone 7/7 Plus将在9月9日下午3:01正式开启预售,9月16日将正式开卖。现在万事俱备,只欠“割肾”,果粉们,Are you ready?
火影是笔者非常喜欢的一个动漫,同时火影的游戏也有很高的可玩性,对于新手玩家首先要了解火影忍者究极风暴3出招表,下面我就来教大家这款游戏里一些招式,喜欢这个游戏的玩家不妨来看看。
炎夏烈日炎炎,就在你与阳光亲密接触时,也让紫外线有了可乘之机,有的时候,虽然你认真做了防晒的工作,却依旧没能躲过炙热的阳光,晒伤之后,要立马着手修复晒伤的肌肤,那么晒伤后怎么处理呢?下面就一起来看看吧。
脸上肉嘟嘟的女生和男生们是不是选择发型的时候很伤大脑。没关系,我们这里肯定有一款适合你的发型,本文也是大圆脸一枚,下面分享下我收集多年的圆脸女生男生发型以及学会的圆脸发型修饰技巧。
孕妇能吃西瓜吗?面对炎炎夏暑的到来,西瓜作为夏季最常见的水果之一,已经成了人们必吃的解暑水果,作为特殊人群的孕妈妈们也馋的直流口水了,那么问题来了,孕妇到底可以吃西瓜吗?下文为你详解。
如果您有什么好的建议或者疑问,可以联系我们! QQ群: QQ号: 进群、加好友,备注:图老师 小周老师一一为您解答!让我们一起学习、一起进步 版权所有 (C) 2016 All Rights Reserved. 湘ICP备号
微信公众号MySQL中TEXT与BLOB字段类型的区别
投稿:junjie
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了MySQL中TEXT与BLOB字段类型的区别,本文总结了6大区别,需要的朋友可以参考下
在MySQL中有两个字段类型容易让人感觉混淆,那就是TEXT与BLOB,特别是自己写博客程序的博主不知道改为自己的博客正文字段选择TEXT还是BLOB类型。
下面给出几点区别:
一、主要差别
TEXT与BLOB的主要差别就是BLOB保存二进制数据,TEXT保存字符数据。目前几乎所有博客内容里的图片都不是以二进制存储在数据库的,而是把图片上传到服务器然后正文里使用&img&标签引用,这样的博客就可以使用TEXT类型。而BLOB就可以把图片换算成二进制保存到数据库中。
二、类型区别
BLOB有4种类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。
TEXT也有4种类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。这些类型同BLOB类型一样,有相同的最大长度和存储需求。
三、字符集
BLOB列没有字符集,并且排序和比较基于列值字节的数值值。TEXT列有一个字符集,并且根据字符集的校对规则对值进行排序和比较
四、大小写
在TEXT或BLOB列的存储或检索过程中,不存在大小写转换,都一样!
五、严格模式
运行在非严格模式时,如果你为BLOB或TEXT列分配一个超过该列类型的最大长度的值值,值被截取以保证适合。如果截掉的字符不是空格,将会产生一条警告。使用严格SQL模式,会产生错误,并且值将被拒绝而不是截取并给出警告。
当保存或检索BLOB和TEXT列的值时不删除尾部空格。
对于BLOB和TEXT列的索引,必须指定索引前缀的长度。
BLOB和TEXT列不能有默认值。
当排序时只使用该列的前max_sort_length个字节。max_sort_length的 默认值是1024。
当你想要使超过max_sort_length的字节有意义,对含长值的BLOB或TEXT列使用GROUP BY或ORDER BY的另一种方式是将列值转换为固定长度的对象。标准方法是使用SUBSTRING函数。
BLOB或TEXT对象的最大大小由其类型确定,但在客户端和服务器之间实际可以传递的最大值由可用内存数量和通信缓存区大小确定。你可以通过更改max_allowed_packet变量的值更改消息缓存区的大小,但必须同时修改服务器和客户端程序。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 long raw转换blob 的文章

 

随机推荐