当我在 MariaDB/MySQL 中创建附有注释的索引时,该注释存储在哪里?

Posted

技术标签:

【中文标题】当我在 MariaDB/MySQL 中创建附有注释的索引时,该注释存储在哪里?【英文标题】:When I create an index in MariaDB/MySQL with a comment attached to it, where is that comment stored? 【发布时间】:2019-11-07 03:48:11 【问题描述】:

我浏览了information_schema,但在任何地方都找不到这些 cmets?

我正在尝试使用SELECT * FROM information_schema.INDEX_STATISTICS 作为查找未使用/冗余索引的基础,并认为如果我可以通过加入INDEX_STATISTICS 来查看我在索引旁边创建的 cmets,它会更加有用到另一张桌子,但我只能找到INNODB_SYS_INDEXES,它没有评论字段。

它们是否只保存在 DDL 中,因此无法在此类查询中返回?

【问题讨论】:

【参考方案1】:

您可以通过访问INDEX_COMMENT 字段从视图information_schema.STATISTICS 获取评论属性。来自 mysql Docs:

INDEX_COMMENT

为具有 COMMENT 属性的索引提供的任何注释,当 索引已创建。

尝试以下方法:

SELECT INDEX_SCHEMA, INDEX_NAME, INDEX_COMMENT 
FROM information_schema.STATISTICS

【讨论】:

嗯,谢谢。我没有看过那张桌子,也永远不会猜到它的名字!

以上是关于当我在 MariaDB/MySQL 中创建附有注释的索引时,该注释存储在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在Python中创建多行注释?

如何使用 java spring 注释在 MongoDB 中创建一个完全填充的引用对象

MariaDB/MySQL 中的 CREATE PROCEDURE 出现神秘错误

当我在 xcode 11 中创建一个新项目时,它没有故事板,如果我运行旧项目,它没有控制器?

使用注释一对多不添加列(休眠)

当我在 ember 数据中创建或更新 (belongs_to) 模型和 (has_many) 模型中的自动同步更新列时