Erro de Select em jdbc [RESOLVIDO]

2 respostas
iltonk

pessoal qual erro desse código:

String sql3 = "select max(codigoendereco) from endereco";

		try {
			Statement stm = conexao.createStatement();

			ResultSet rs = stm.executeQuery(sql3);

			if (rs.next()) {

				codigoEndereco = rs.getInt("codigoendereco");
			}

			stm.close();
			rs.close();
		} catch (SQLException e1) {
			e1.printStackTrace();
		}

segue o erro:

org.postgresql.util.PSQLException: A nome da coluna codigoendereco não foi encontrado neste ResultSet.
	at org.postgresql.jdbc2.AbstractJdbc2ResultSet.findColumn(AbstractJdbc2ResultSet.java:2542)
	at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.java:2406)
	at cliVet.DAO.UsuarioDAO.inserirUsuario(UsuarioDAO.java:56)
	at cliVet.testes.TexteBanco.main(TexteBanco.java:39)

2 Respostas

drsmachado

Primeiro, qual é o erro de insert que você se refere no título do tópico?
Segundo, max(codigoendereco) não é codigoendereco.
Soluções
1 - Altere o título para erro em SELECT.
2 a - Altere o

rs.getInt("codigoendereco");

por

rs.getInt(1);
//ou
rs.getInt("max(codigoendereco)");

2 b - Prefira usar um alias

String query = "select max(codigoendereco) as MAX_COD_END FROM endereco";
(...)
rs.getInt("MAX_COD_END");

Acho que fica bem mais fácil.

iltonk

obrigado drsmachado rodou direitinho. Obrigado pela dica!!!

Criado 19 de novembro de 2012
Ultima resposta 19 de nov. de 2012
Respostas 2
Participantes 2