Comando do MySQL funciona no MySQL mas não no JAVA?

2 respostas Resolvido
rafael_pinke

Bom dia!

Estou fazendo meu programa, e estou com um problema irritante kk.
Se eu coloco este comando DIRETO no mysql, dá certo. Executa OK!

SELECT * FROM pedidos WHERE IDVenda = (SELECT MAX(IDVenda) AS IDVenda FROM pedidos)

Já se eu coloco ele no meu código, ele simplesmente retorna null.

Como faço para fazer funcionar isto?

Este código está junto com os outros comandos do MySQL que meu programa usa, ou seja, não acho que deve ser problema de conexão com o MySQL ou algo do tipo.

Caso precisem… O código é este

ps = con.prepareStatement(SELECT * FROM pedidos WHERE IDVenda = (SELECT MAX(IDVenda) AS IDVenda FROM pedidos));

rs = ps.getResultSet();

ps.executeQuery();

int IDvenda = 0;

if (rs != null) {

IDvenda = rs.getInt(IDvenda);

System.out.println("Achou ID " + rs.getInt(IDvenda));

}

Quero apenas descobrir o ID mais alto. Nem precisa do SELECT * FROM pedidos WHERE IDVenda =… Apenas a parte do SELECT MAX mesmo, porém já tentei de todas formas e to ficando doido já kkkk

2 Respostas

staroski
Solucao aceita

Apaga essa linha

Troca essa linha por esta

rs= ps.executeQuery();

Troca esse if por

if (rs.next()) {
rafael_pinke

Poxa vida, um erro tão bobo. Falta de informação minha, faz uns anos q estou sem mexer no MySQL.
Mas obrigado pela ajuda!

Criado 15 de agosto de 2019
Ultima resposta 15 de ago. de 2019
Respostas 2
Participantes 2