如何设置MySQL数据库表的索引总长度?是否可以设置成无限的? 5C

根据我们公司产品的需求,我现在正在设计一张数据库表,这张表中包含非常多的字段,甚至还在增加,在业务上,很多字段会参与筛选,所以我给那些参与筛选的字段都加上了索引,但是现在索引的总长度已经超过了上限,无法再添加索引了。有些人告诉我应该把某些字段拆分到另一张表中。我尝试这么做过,但是我发现这么做的话会导致查询的代码非常难写,而且经常会出现临时表的情况,严重影响了性能。
我想问,是否有一种方案,可以使MySQL数据库的索引总量不受限制。或许是否还有其它比较好的建表方案?谢谢

8个回答

无论在哪个数据库中,索引总长度都是有上限的。可以选择创建多个不同的索引。
如果字段后期会不断增涨,那就要考虑拆表。主表与子表用ID进行关联,这样多join几次应该就和你现在的语句没有什么差别了。

MySQL数据库表的索引总长度不能设置为无限长的

按业务,必须拆分表啊。包含非常多的字段是指多少,100来个还是可以的。但是正常来说,要按业务拆表的,查询没什么难写的,就多表关联呗。

不是有64 255之类的么 那里改就行啊

应该是不可以设置成无限长的

无论哪个数据库,索引总长度都是有限的,是不能设置为无限长的。

,是可以设置为无限长的。

不能设置为无限的,设置为long型够用了吧

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问