我在我的数据库中有一些数据,并且每当数据存储时都会自动增加一个id列。如何检索最大id值并存储在int变量中?
出于某种目的,我想检索最后添加的行或最大id(也是最后一行)的行。我写了下面的查询为:
List<Student> student = sessionFactory.getCurrentSession().createQuery("SELECT * FROM Student ORDER BY id DESC")
我不知道它是否是做正确的方式,但在执行我收到错误,如意外的标记:*。
寻找您的宝贵建议和提前致谢。
public void storeData(Student student)
{
List<Student> std = sessionFactory.getCurrentSession().createQuery("FROM Student ORDER BY id DESC limit 1").list(); //getting error while executing this statement(unexpected token limit)
System.out.println(std.get(0).getNumber()); //getting error while executing it
}
我通过storeData类中的学生对象发送学生数据。我希望在存储数据后,我可以访问存储的数据的值,例如我想将数值存储在变量中以供进一步处理。但是在执行上面的操作时出现错误。
你在使用Hibernate吗? – Kayaman
是的,我正在使用Hibernate @kayaman – Amit
那么你为什么要编写SQL而不是HQL? – Kayaman