【发布时间】:2022-12-29 12:41:07
【问题描述】:
我的桌子上有这些索引:
mysql> 显示来自 sous_categories 的索引; +----------------+------------+------------+------ ------+----------------+------------+---------- ---+------------+--------+------+------------+------ ---+----------------+--------+------------+ |表 |非唯一 |键名 |序列输入索引 |列名 |整理|基数 |子部分 |打包 |空 |索引类型 |评论 |索引_评论 |可见 |表达 | +----------------+------------+------------+------ ------+----------------+------------+---------- ---+------------+--------+------+------------+------ ---+----------------+--------+------------+ | sous_categories | 0 |初级 | 1 | id_sous_categorie |一个 | 16 |空 |空 | | B树 | | |是 |空 | | sous_categories | 0 |初级 | 2 |分类编号 |一个 | 16 |空 |空 | | B树 | | |是 |空 | +----------------+------------+------------+------ ------+----------------+------------+---------- ---+------------+--------+------+------------+------ ---+----------------+--------+------------+ 一组 2 行(0.01 秒)
我想删除第二列,通过检查MySQL INDEX STATMENT,我发现我只能通过 index_name 删除,但在我的例子中,两者都有相同的 key_name。 请问我该怎么做? (我知道这是可能的,因为我可以用 phpmyadmin 来做,但我想知道如何用命令行来做)
【问题讨论】:
-
这是一个索引,有两列。
-
所以我不能删除第二列?我会编辑问题
-
Please Never post images of code, data or error messages。请编辑您的问题,并将文本复制/粘贴到问题中,格式化。这样我们就可以尝试重现问题而不必重新输入所有内容,并且屏幕阅读器可以正确索引或阅读您的问题。
-
MySQL 没有 alter index 选项,所以你唯一的命令行选项是 drop 然后是 create,我怀疑 phpmyadmin 正在为你做
标签: mysql sql phpmyadmin database-indexes