我想创建有216个字段的表,但是当我尝试创建它时,我在mysql中遇到了以下错误。
#1118 - 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
我不知道它的解决方案是什么。 请帮帮我。
答案 0 :(得分:6)
问题正是mysql告诉你的:你有一个表的数据太多了。 不仅字段的数量正在计入它们,还有它们的大小......
但是真正的问题在你的数据库设计中,你设计了一个急需帮助的表:'分裂我,分裂我!'
你应该normalize你的设计..
答案 1 :(得分:1)
行大小太大。这意味着就是这样。你真的需要这216个领域吗?你能减少它们吗?
如果您确实需要这216个字段,请考虑将它们分成2-3个表,从1到1映射从一个到另一个。
答案 2 :(得分:1)
错误信息非常清楚。添加所有216个字段的大小,您应该看到它超过了最大值。正如@Peter所说,你真的需要重新思考你的设计。我的桌子最多应该有几十个字段!
答案 3 :(得分:0)
最小化字段大小或改为使用它们的文本/ blob。
向我们展示您尝试运行的create table命令。