我正在将应用程序的数据库层从MSSQL迁移到MySQL,当我尝试将MSSQL表迁移到MySQL时遇到了这个异常:
Row size too large. The maximum row size for the used table type
,not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs)
原来MSSQL表有很多nvarchar列,其有效行大小远大于65535.我想到的唯一方法就是改变我的应用程序设计,将大表拆分成较小的表格重新设计不是我期待的。
有没有办法在没有应用程序重新设计的情况下克服这个问题?
提前致谢。
Bharath K。
答案 0 :(得分:2)
根据MySQL的文档:即使存储引擎能够支持更大的行,表的内部表示也具有65,535字节的最大行大小。所以你就是不能拥有这样一张桌子。
您应该分析原始表的数据以更改某些列的长度。或者制作目标MySQL表'TEXT'
的一些列