gpt4 book ai didi

java - 如何使用 hibernate 获取所选表的最后一列?

转载 作者:行者123 更新时间:2023-12-02 12:30:04 24 4
gpt4 key购买 nike

我正在尝试按降序获取最后一列的 ID。

返回最后一列的查询是

select id from(select id from challan 
order by id desc) where ROWNUM=1;

现在我正在尝试使用 hibernate 来做同样的事情。

public long getIdOnChallanTable() {
session = sessionFactory.openSession();
trans = session.beginTransaction();

Query<Object[]> query = session.createNativeQuery("select id
from(select id from challan order by id desc) where ROWNUM=1;");

Long value = 0L;
List<Object[]> list = query.getResultList();
for ( Object lst : list){
Object[] objects =(Object[]) lst;
value=(Long)(objects[0]);
}
return value;

}

错误是:

2017-07-26 12:37:36 [http-nio-7080-exec-1] WARN :: SQL Error: 911, SQLState: 22019
2017-07-26 12:37:36 [http-nio-7080-exec-1] ERROR:: ORA-00911: invalid character

update error javax.persistence.PersistenceException:
org.hibernate.exception.SQLGrammarException: could not extract ResultSet

最佳答案

查询末尾不需要分号,请使用适当的空格。在 FROM 子句中,子查询和 FROM 关键字之间没有空格。

注意:不要忘记在最后提交/回滚事务并处理异常。我希望这只是一个向我们展示问题的草图,而不是来自现实世界应用程序的代码。

关于java - 如何使用 hibernate 获取所选表的最后一列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45319632/

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