【发布时间】:2017-09-16 11:36:23
【问题描述】:
我有一个包含近 20 个字段的表,其中几个是已经被 Mysql 索引的外键,现在我想创建一个包含 3 个 FK 字段的多索引索引, 第一次尝试是基于Fields
ALTER TABLE `Add`
Add INDEX `IX_Add_ON_IDCat_IDStatus_IDModeration_DateTo_DateAdded`
(`IDCategory`,`IDStatus`,`IDModeration`,`DateTo`,`DateAdded`);
但我认为最好在索引而不是字段上建立索引,但我的以下努力面临错误:Error Code: 1072. Key column 'FK_Add_Category' doesn't exist in table
ALTER TABLE `Add`
Add INDEX `IX_Add_ON_IDCat_IDStatus_IDModeration_DateTo_DateAdded`
(`FK_Add_Category`,`FK_Add_AddStatus`,`FK_Add_AddModeration`,
`IX_Add_DateTo`,`IX_Add_DateAdded`);
我的问题是是否可以在存在索引(在我的情况下为 FK 索引)上添加索引,并且只有在列上创建索引的方法?如果是我如何创建它?
【问题讨论】:
-
在索引上有一个索引 - 这是不可能的。
-
可以对表名(索引列名)进行索引,索引不是列。
-
问题是什么?第一条语句在 MySQL 中是正确的。
-
@zhilevan 。 . .没有“还”。 “索引上的索引”在 SQL 上下文中没有意义。