【问题标题】:Hibernate session data can't be accesed by stored procedure存储过程无法访问休眠会话数据
【发布时间】:2013-05-05 17:06:08
【问题描述】:

我有一个在 spring 事务下运行的方法,它调用两个存储过程。

  1. 第一个存储过程成功执行,但数据尚未提交(因为事务)
  2. 现在,第二个存储过程尝试查询以前不可用的数据。

有人可以告诉我如何将未提交的数据共享给(第二个)存储过程。

注意:不能使用未提交的隔离,因为我使用的是 oracle 数据库,它不支持。

PS :- 搜索时我得到了要求我刷新休眠会话的答案。但对我不起作用。

【问题讨论】:

  • 我看不出休眠会话与该问题有什么关系。存储过程在数据库内部执行。鉴于一切都在一个事务中,我不明白为什么第二个 SP 看不到第一个 SP 所做的修改。
  • 如果您使用同一个会话来执行第二个过程,它应该可以正常工作。尽可能分享您的代码以获得完美答案。

标签: spring hibernate


【解决方案1】:

使用一个存储过程。如果你不能这样做,请在第一个存储过程之后提交,因为第二个 SP 需要能够查询第一个的结果,所以这会自动成为你的 tx 边界。

【讨论】:

    猜你喜欢
    • 2010-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    • 2013-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多