Estou tentando usar a query pra recuperar o ultimo id
SELECT id FROM Pessoa ORDER BY id DESC
SELECT MAX(id) FROM Pessoa
com setMaxResults(1); na primeira mas ele não retorna nada, e quando eu uso direto com sql no banco ela aceita.
Obrigado!
Estou tentando usar a query pra recuperar o ultimo id
SELECT id FROM Pessoa ORDER BY id DESC
SELECT MAX(id) FROM Pessoa
com setMaxResults(1); na primeira mas ele não retorna nada, e quando eu uso direto com sql no banco ela aceita.
Obrigado!
Mas pq isso? setMaxResults(1);
Se você já está fazendo SELECT MAX(id) FROM Pessoa e isso só volta uma ilha?
setMaxResults é JPA, portanto está usando HQL.
Cuidado que HQL parece mas não é SQL. Não conheço suficiente HQL para dizer o que está errado na sua query, mas provavelmente também há algum problema.
[quote=entanglement]setMaxResults é JPA, portanto está usando HQL.
Cuidado que HQL parece mas não é SQL. Não conheço suficiente HQL para dizer o que está errado na sua query, mas provavelmente também há algum problema. [/quote]É, nem pensei que ele estava usando HQL/JPQL…
Aqui mostra como funciona o JPQL: http://uaihebert.com/?p=1137
Então, o max result eu usei pra substituir o Max no primeiro caso entende? Pq Max é sql, e o Hql só suporta assim
O banco que você está usando é oracle?
Dessa forma que você está fazendo, veja a query que o hibernate está gerando…