Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs

1
Create table `test`.`test` (  
  `seq` int UNSIGNED NOT NULL AUTO_INCREMENT,
  `varchar` varchar(60000),
  `varchar_2` varchar(60000),
  primary key (`seq`) 
);
=> 에러
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
=> 원인
The internal representation of a MySQL table has a maximum row size limit of 65,535 bytes, even if the storage engine is capable of supporting larger rows. BLOB and TEXT columns only contribute 9 to 12 bytes toward the row size limit because their contents are stored separately from the rest of the row.
=> 해결
varchar 필드를 text 등으로 바꾸면 maximum row size 의 계산에서 text 필드는 12바이트 정도로 줄어든다.
댓글
  • No Nickname
    No Comment
  • 권한이 없습니다.
    {{m_row.m_nick}}
    -
목록형 📅 달력형