Sql-server到MySQL的迁移问题 - 最大行数不能超过65,535字节

时间:2010-06-30 05:02:49

标签: mysql sql-server

我正在将应用程序的数据库层从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。

1 个答案:

答案 0 :(得分:2)

根据MySQL的文档:即使存储引擎能够支持更大的行,表的内部表示也具有65,535字节的最大行大小。所以你就是不能拥有这样一张桌子。

您应该分析原始表的数据以更改某些列的长度。或者制作目标MySQL表'TEXT'

的一些列