我正在 ExpressionEngine 中构建一个网站,客户希望将每个图像和文本作为可编辑字段内置到 EE 的内容管理系统中。好吧……快完成了。目前有 1030 个 channel 字段,跨 20 个 channel 字段组,包含 20 个 channel 。
在尝试添加 channel 字段 #1031 并继续添加 channel 字段时,出现以下错误:
发生数据库错误 错误号:1117
列太多
ALTER TABLE `exp_channel_data` ADD `field_id_1036` text NULL
文件名:libraries/api/Api_channel_fields.php
行号:675
过去两周我一直在创建这些 channel 字段,我真的不想回去重新构建所有内容。所以我想知道......
有没有办法增加列数,以容纳完成此网站所需的其余 channel 字段?或者需要做什么才能添加更多 channel 字段?
如有任何建议,我们将不胜感激。谢谢您
最佳答案
您已达到 MySQL 限制。您可以更改列类型以更准确地反射(reflect)它们包含的数据类型,例如存储日期或 bool 值的列不需要是占用表中不必要空间的 text
或 varchar
。还有limit每行可以有多少数据。
- 每个表(无论存储引擎如何)的最大行大小为 65,535 字节。存储引擎可能会对此限制施加额外的约束,从而减少有效的最大行大小。
也许是时候更好地标准化数据了。
关于php - 使用 ExpressionEngine 并收到此错误 : A Database Error Occurred, 错误号 : 1117, 列太多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19712587/