mysql表多个text的字段,出现以下错误,#1118 - Row size too large (> 8126). Changing some column

问题描述

首先感谢解答。本人有一个表,里面有10多个text的字段,会填很多数据。但是在保存时候出现以下错误,#1118-Rowsizetoolarge(>8126).ChangingsomecolumnstoTEXTorBLOBorusingROW_FORMAT=DYNAMICorROW_FORMAT=COMPRESSEDmayhelp.Incurrentrowformat,BLOBprefixof768bytesisstoredinline.请问怎么解决?万分感谢!

解决方案

解决方案二:
参考
解决方案三:
引用1楼magi1201的回复:

参考

这个我看过了,也试过上面的方法,但是我这个表有外键,改不了MyISAM,试过了longtext也不行,还有其他的办法吗?

时间: 2025-01-07 13:34:11

mysql表多个text的字段,出现以下错误,#1118 - Row size too large (> 8126). Changing some column的相关文章

更新text字段时出现Row size too large报错应付措施_Mysql

起因: 团购开发报告说更新时出错. 更新SQL如下: 复制代码 代码如下: UPDATE table_name d SET d.column_name='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' WHERE d.ID=100976; 报错信息如下: Error Code : 1118 Row si

Mysql 报Row size too large 65535 的原因及解决方法_Mysql

报错信息:Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535 向mysql的表插件一个字段 类型为text时,或修改一个字段类型为text时,报出上面的错误.其实我对这个错误的原因理解也不是很深,给出一些我查到的解释吧 大意是数据表中有一个设定长度为64K的字段索引,当表中字段(不知道是字段名字还是什么)不能超过这个长度,65,535所说明的是针对的是整个表的

DTS迁移多text字段时出现Row size too large的错误

    本周DTS一个增量迁移任务出现一个很诡异的问题,之所以说诡异是因为DTS已经为该用户的库同步了很长一段时间的增量数据(数据量在15G+),今天突然出现了这个问题:     从异常的信息大致可以推测出出错的原因是新插入的一行数据需要存储在数据页的实际数据长度大于一个数据页的长度(8126).所以首先对比了一下源表和目标表的数据结构(可能是两边的表结构不一致导致的),两边的表结构是一致的,但却是定义了许多Text类型的大字段而已     然后查询了两边的innodb_file个配置,源库:

mysql中varchar和text字段类型理解

最近有几个同学问我varchar和text有啥别吗,这个问题,以前说真的也没太多的整理,以前遇到text在设计中就是尽可能的拆到另一个表中,保持主表尽量的瘦小,可以让innodb bp缓存更多的数据. 今天借次机会系统整理一下,主要从存储上,最大值,默认值几个方面进行比较. BTW: 从ISO SQL:2003上讲VARCHAR是一个标准型,但TEXT不是(包括tinytext).varchar在MySQL 5.0.3之前只支持0-255byte, 在5.0.3之后才支持到0-65535byte

将string插入sql srver表中text类型字段,太长时无法插入,怎么办?

问题描述 现在想把一个很长的string插入到sqlserver数据表中的text类型字段,但当string非常大时无法插入,请问有什么解决办法,谢谢! 解决方案 解决方案二:不会吧,text型都放不下?你的string有多大呀.解决方案三:按住,狠插~解决方案四:text也放不下,那你就不要放了解决方案五:不要使用拼串的Sql,而是使用数据库命令对象如SqlCommand,为其添加Text类型的参数就可以了,比如SqlParameter.解决方案六:请问hbxtlhx能帮我举个例子么?不太明白

String类型存到mysql类型为text的字段中怎么出现了乱码?

问题描述 String类型存到mysql类型为text的字段中怎么出现了乱码? 一个String类型的存到mysql类型为text的字段中出现了乱码,需要怎么改呢? 解决方案 db-url后面加?useUnicode=true&characterEncoding=GBK 数据库的基字符集改成utf8 表中字段字符集改为utf8 解决方案二: 可能是你的编码有问题... 意思就是你的mysql的默认编码与输入的string时的编码不同吧.... 解决方案三: 参考此文http://blog.csd

mysql中alter数据表中增加、删除字段与表名修改例子

 alter是非常强大的一个功能我们可以利用alter来修改数据表表名字体名及一些其它的操作了,下面一起来看看mysql中alter数据表中增加.删除字段与表名修改的一个例子.     修改删除mysql数据库中的数据内容: [root@hk ~]# /usr/local/mysql/bin/mysql -uroot -p'admin' #进入mysql mysql> create database gbk default character set gbk collate gbk_chines

关于Java Hibernate 插入与更新同一张MySQL表不同字段,出现锁没被释放

问题描述 关于Java Hibernate 插入与更新同一张MySQL表不同字段,出现锁没被释放 关于Java Hibernate 插入与更新同一张MySQL表不同字段,出现锁没被释放,这个有可能是数据还没插入完或者插完了锁没有被释放,导致下一个更新操作不能执行,等待超时,这个情况出现在操作数据量大的时候!这个情况有哪几种解决方式? [http-bio-8080-exec-3] [SQLErrorCodesFactory.:126] SQLErrorCodes loaded: [DB2 Derb

mysql 表的字段名 大小写转换问题

问题描述 mysql 表的字段名 大小写转换问题 我刚建表的时候 表的字段全是大写的 现在经理让改成小写的 这么多表一个一个字段改太麻烦了 有一条sql就能解决吗? 解决方案 有一个办法是把mysql数据库连同schema一起导出到文件,然后用编辑器查找替换字段名,保存,再导入回数据库 解决方案二: 有没有数据,没有的话,导出表结构sql,word或者winhex替换小写,然后重新建表. 如果有数据,并且表很多,自己写程序,用alter table去修改.遍历表 http://database.