【问题标题】:Hibernate: how to set parameters to createNativeQuery?Hibernate:如何为 createNativeQuery 设置参数?
【发布时间】:2020-02-06 19:17:49
【问题描述】:

我正在使用以下查询:

public String getAmount(String userId, String companyId) {
    Integer amountList = entityManager.createNativeQuery("SELECT scan.attorney.Get_Amount(?, ?) AS amount FROM DUAL")
                    .setParameter(1, companyId).setParameter(2, userId).getFirstResult();
    return amountList.toString();
}

当 getAmount 被传递时,我们也传递了用户 ID 和公司 ID,但它没有获取正确的值,当我们在数据库中使用相同的值运行查询时,它是正确获取的。

任何人都可以提出上述原生查询中的问题吗?

【问题讨论】:

    标签: hibernate named-query hibernate-native-query


    【解决方案1】:

    另一种方式

    String sql = "select * from table where id = ?1;"
    Em.createNativeQuery(sql);
    
    Sql.setParameter(1,id);
    

    【讨论】:

      【解决方案2】:
      String sql = "select * from table where id = :id;"
      Em.createNativeQuery(sql);
      
      Sql.setParameter("id",id);
      

      【讨论】:

        猜你喜欢
        • 2017-06-25
        • 1970-01-01
        • 1970-01-01
        • 2023-04-09
        • 2017-06-05
        • 2014-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多