我们当前的数据库 (MySQL) 已经为其外键创建了索引,因为这些使用了 InnoDB,它 (afaik) 会自动为外键生成 IndexTables。 Hibernate 不是用来创建这些表的。所以我的问题是:当我使用 Hibernate 从其表中获取数据时,MySQL 是否会自动为其外键使用索引?还是我必须配置 Hibernate 才能使用这些索引?
谢谢, 伊梅内
最佳答案
是的,查询优化器决定使用或不使用索引。在您的 SELECT 语句上使用 EXPLAIN 来查看它使用了什么。 Hibernate 创建的查询或硬编码查询没有区别。
关于java - 在 Hibernate 中为外键使用 MySQL 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3475202/