gpt4 book ai didi

java - 在 Hibernate 中将 HQL 与 native SQL 混合时数据库的状态

转载 作者:搜寻专家 更新时间:2023-11-01 03:55:32 25 4
gpt4 key购买 nike

在我的数据库代码中,我使用了一些 Hibernate 原生 SQL 查询(插入、删除、更新)。我知道当我使用 HQL 并且缓存打开时,每当我使用 HQL 调用数据库时,数据库的状态都是稳定的。但是,我想知道如果我使用 native SQL 查询会发生什么,例如我插入一些数据(但不提交),然后尝试使用 HQL 查询获取一些数据。我也会得到插入的数据吗?

有什么提示吗?

最佳答案

我会说,这取决于底层数据库和事务设置。但即使是 HQL 也会被翻译成原生 SQL 并执行。只要您保持在同一个事务中,您就可以通过 HQL 加载使用 native SQL 所做的更改。但请记住,HQL 查询与缓存、代理和其他 hibernate 内容交互 - 可能会出现一些奇怪的问题,因为 natiev SQL 完全绕过了这个(这是 native 查询的目的 - 所有 hibernate 内容的快速 channel )

关于java - 在 Hibernate 中将 HQL 与 native SQL 混合时数据库的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8006867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com