hibernate:绑定参数(如果不为null)

时间:2019-06-26 10:43:59

标签: java sql hibernate

我创建了一个Web服务,该服务检查表中是否存在数据。我有两个输入,一个输入是强制输入,另一个输入是可选输入。 我想创建一个绑定参数mode的查询(如果不为null)。 我使用了此查询,但是它不起作用,并且出现了这个错误:

java.sql.SQLException: ORA-01008: not all variables bound

查询:

 SELECT DATE_TRAITEMENT, DATE_DEB_PERIODE, DATE_FIN_PERIODE,user_cdg,canal,motif,SUJET_CRM,MODE_generation, TRAIT_STATUS,REMARK FROM  ACM.CDG_REQUEST_OnDEMAND where   CO_ID = :coId and (MODE_GENERATION= :mode or (MODE_GENERATION is null and :mode is null))  order by DATE_TRAITEMENT asc

这是我的DAO课:

  Session session = HibernateUtil.currentSession();
    SQLQuery query = null;
    org.hibernate.Transaction tx = session.beginTransaction();
    String sql = cdg.getMessage("REQ001");      
    query = session.createSQLQuery(sql);
    query.setLong("coId", coId);    
    if(integer != null) {
    query.setInteger("mode", integer);
         }
    query.executeUpdate();

0 个答案:

没有答案