我已经达到了表格行大小的限制,所以我无法在表格中添加任何列。
我收到以下错误:
。#1118 - 行大小太大。使用的表类型的最大行大小(不计算BLOB)是65535.您必须将某些列更改为 文字或BLOB
我已经在MySQL website上研究了这个问题,但我仍然不确定如何解决这个问题。
有谁知道我如何解决这个问题,以及我需要运行哪些设置或脚本来修改设置,以便它允许我向表中添加更多列?
答案 0 :(得分:3)
为什么您的行大小为64k?那是你的问题。设置不是太低。
自:
http://dev.mysql.com/doc/refman/5.0/en/column-count-limit.html
每个表都有一个包含表定义的.frm文件。该 server使用以下表达式来检查某些表 存储在文件中的信息,上限为64KB:
> if (info_length+(ulong) create_fields.elements*FCOMP+288+
> n_length+int_length+com_length > 65535L || int_count > 255)
所以你不太可能轻易改变(没有修改源代码和运行自定义MySQL。给我们你的架构,我们可能会更好地建议,但简短的回答似乎是你有太多列,或需要将某些VARCHAR等更改为text / blob。
没有看到(可能是一种可憎的)架构,很难建议。