如何在休眠配置文件中设置work_mem [英] How to set work_mem in hibernate configuration file

查看:56
本文介绍了如何在休眠配置文件中设置work_mem的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在休眠映射文件中为单个查询设置 work_mem ( set work_mem ='100MB'; ).我需要在哪里为以下查询设置work_mem

I want to set work_mem (set work_mem='100MB';) for a single query in my hibernate mapping file. where do I need to set work_mem for the following query

<query name="queryname">
  <![CDATA[SELECT s from Stock A s where s.stockCode = :stockCode]]>
</query>

推荐答案

您需要访问当前的Hibernate会话并使用doWork执行本机SQL命令:

You need to get access to your current Hibernate session and use doWork to execute a native SQL command:

session.doWork(new Work() {
                 @Override
                 public void execute(Connection conn) throws SQLException {
                       Statement s = null;
                       try {
                              s = conn.createStatement();
                              s.executeUpdate("SET work_mem TO '100MB';");
                       }
                       finally {
                              s.close();
                       }                                
                 }
          });

然后您可以继续进行Hibernate查询.

And then you can continue with your Hibernate query.

这篇关于如何在休眠配置文件中设置work_mem的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆