MySQL row size error -


i can not understand issue. have table under innodb minimum row size, , started getting error when last field in row being filled. last field being 1280 (varchar) field, attempting place 879 characters of data within it. returns:

#1118 - row size large (> 8126). changing columns text or blob or using row_format=dynamic or row_format=compressed may help. in current row format, blob prefix of 768 bytes stored inline.

ok read , figured had overhead in row, split in two. did taking large section out of front end form talking table, , storing in separate table altogether. modified php handle 2 tables instead of one. made no difference - same error trying fill out same last field same 879 characters in severely shrunken table.

so try making table row_format=dynamic - still same result. try row_format=compressed - , yes, still same problem. driving me nuts.

what left do? missing?

as requested, here table structure:

drop table if exists `app_aigprreq`; /*!40101 set @saved_cs_client     = @@character_set_client */; /*!40101 set character_set_client = utf8 */; create table `app_aigprreq` (   `appid` int(11) not null auto_increment,   `uid` int(11) not null,   `uaid` int(11) not null,   `status` varchar(32) not null default 'data acquisition',   `agref` varchar(32) default null,   `groupname` varchar(64) default null,   `shorttitle` varchar(64) default null,   `recipient` varchar(64) default null,   `partofvalch` varchar(64) default null,   `sector` varchar(64) default null,   `subsector` varchar(64) default null,   `topic` varchar(64) default null,   `apfunreqagmardt` decimal(12,2) default null,   `apfunreqgroup` decimal(12,2) default null,   `othergroupname1` varchar(64) default null,   `apfunreqother1` decimal(12,2) default null,   `othergroupname2` varchar(64) default null,   `apfunreqother2` decimal(12,2) default null,   `othergroupname3` varchar(64) default null,   `apfunreqother3` decimal(12,2) default null,   `totalfunding` decimal(12,2) default null,   `researchcosts` decimal(12,2) default null,   `othercostsname1` varchar(64) default null,   `othercosts1` decimal(12,2) default null,   `othercostsname2` varchar(64) default null,   `othercosts2` decimal(12,2) default null,   `othercostsname3` varchar(64) default null,   `othercosts3` decimal(12,2) default null,   `totalcosts` decimal(12,2) default null,   `groupauthagent` varchar(64) default null,   `groupauthagentaddress` varchar(128) default null,   `groupauthagentphone` varchar(22) default null,   `groupauthagentemail` varchar(64) default null,   `groupprojleader` varchar(64) default null,   `groupprojleaderaddress` varchar(128) default null,   `groupprojleaderphone` varchar(22) default null,   `groupprojleaderemail` varchar(64) default null,   `othergroupmembers` varchar(1280) default null,   `structure` varchar(1280) default null,   `memgovboard` varchar(1280) default null,   `projectgoal` varchar(2560) default null,   `ecobenval` varchar(2560) default null,   `ecoeval` varchar(2560) default null,   `projectplan` varchar(5120) default null,   `milestone01` varchar(1024) default null,   `dateexp01` varchar(11) default null,   `payment01` varchar(11) default null,   `milestone02` varchar(1024) default null,   `dateexp02` varchar(11) default null,   `payment02` varchar(11) default null,   `milestone03` varchar(1024) default null,   `dateexp03` varchar(11) default null,   `payment03` varchar(11) default null,   `milestone04` varchar(1024) default null,   `dateexp04` varchar(11) default null,   `payment04` varchar(11) default null,   `milestone05` varchar(1024) default null,   `milestone05` varchar(1024) default null,   `dateexp05` varchar(11) default null,   `payment05` varchar(11) default null,   `milestone06` varchar(1024) default null,   `dateexp06` varchar(11) default null,   `payment06` varchar(11) default null,   `milestone07` varchar(1024) default null,   `dateexp07` varchar(11) default null,   `payment07` varchar(11) default null,   `milestone08` varchar(1024) default null,   `dateexp08` varchar(11) default null,   `payment08` varchar(11) default null,   `milestone09` varchar(1024) default null,   `dateexp09` varchar(11) default null,   `payment09` varchar(11) default null,   `milestone10` varchar(1024) default null,   `dateexp10` varchar(11) default null,   `payment10` varchar(11) default null,   `exresname` varchar(64) default null,   `exresposition` varchar(64) default null,   `exresorg` varchar(64) default null,   `exresaddress` varchar(128) default null,   `exresphone` varchar(22) default null,   `exresemail` varchar(64) default null,   `exresdata` varchar(2560) default null,   `indref1` varchar(64) default null,   `indrefemail1` varchar(64) default null,   `indrefphone1` varchar(22) default null,   `indref2` varchar(64) default null,   `indrefemail2` varchar(64) default null,   `indrefphone2` varchar(22) default null,   `charref1` varchar(64) default null,   `charrefemail1` varchar(64) default null,   `charrefphone1` varchar(22) default null,   `charref2` varchar(64) default null,   `charrefemail2` varchar(64) default null,   `charrefphone2` varchar(22) default null,   `noncashcontribs` varchar(1280) default null,   `othgovtypfun` varchar(1280) default null,   `ethicinsbio` enum('yes','no') default null,   `nameofcommit` varchar(64) default null,   `nameofchair` varchar(64) default null,   `commitaddress` varchar(128) default null,   `webpubcontactperson` varchar(64) default null,   `webpubcontactaddress` varchar(128) default null,   `webpubcontactphone` varchar(22) default null,   `webpubcontactemail` varchar(64) default null,   `webpubsummary` varchar(1280) default null,   `agr1` enum('yes','no') not null default 'no',   `datestarted` int(11) not null,   `lastmodified` int(11) not null,   `flulct` int(3) not null default '0',   primary key (`appid`,`uid`,`uaid`) ) engine=innodb auto_increment=27 default charset=latin1; 

here trying do:

update `agmapps`.`app_aigprreq` set `webpubsummary` = 'co-innovation collaborative process between companies , r&d knowledge organisations proving powerful accelerant of innovation.  foodhq, partnership between new zealand''s leading food innovators , enabling local government bodies, proving powerful force providing innovative solutions companies moving further value chain.  agmardt supporting creation of national cohort of 30-50 of these innovative companies collaborate foodhq around key export growth activities including product , process development, cost efficiency, meeting client preferences, shelf-life , food safety, , business model innovation.  members of cohort benefit collaborating each other, , part of programme, foodhq convening events , provide interaction platform provide such opportunities.' `app_aigprreq`.`appid` = 13 , `app_aigprreq`.`uid` = 54 , `app_aigprreq`.`uaid` = 71 

update: i'm temporarily changing particular table myisam opposed innodb. seems allow work, want switch innodb every other table in database, , have functioning.

zedfoxus suggestion (see comments) indeed best solution. problem entirely eliminated splitting each forms data storage sections - conveniently done per-form section basis. each section of form stored inside it's own table , has reduced db table structures vastly more efficient , tidy format. irritating overhead limitation no longer hit, when maximum input quota per form question reached.

thanks answered , offered help. many useful leads , ideas posted here!


Comments

Popular posts from this blog

c# - Better 64-bit byte array hash -

webrtc - Which ICE candidate am I using and why? -

php - Zend Framework / Skeleton-Application / Composer install issue -