【问题标题】:Hibernate - turning on and off SQL Index usageHibernate - 打开和关闭 SQL 索引的使用
【发布时间】:2023-03-18 01:14:01
【问题描述】:

如何明确告诉 Hibernate 使用或不使用 SQL 索引?

如果 Hibernate 发现它可以有效地利用资源,它还会创建 SQL 索引吗?

【问题讨论】:

    标签: java sql hibernate indexing


    【解决方案1】:
    How can I explicitly tell Hibernate to use or not to use SQL index
    

    强制进行全表扫描的最简单方法是删除索引。为什么要维护一个您无论如何都不想使用的索引。

    Hibernate 是一个 ORM 工具,它是决定如何执行查询的底层数据库——是否使用索引。因此,如果您想保留索引,并且您认为查询计划器在不应该选择索引时选择了索引,那么也许您可以扭曲 sql 查询,使其导致全表扫描,或者使用数据库特定的 sql 语法 - Oracle 中的SELECT FULL()...,Postgresql 中的enable_indexscan(false) 等(如果您的数据库存在这种情况)。

    如果 Hibernate 发现它会有效使用,它是否会创建 SQL 索引 资源

    没有。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-27
      • 2013-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-10
      相关资源
      最近更新 更多