Como inserir parameto para pesquisa no banco de dados no ResultSet?

3 respostas
agune

Como posso modificar a introducao do parametro na minha String eu acredto que o result set possa receber esse meu parametro

public Modalidade getModalidadebyId(int id) {

		String sql = "select * from modalidade where id=?";
		try {
			PreparedStatement stmt = connection.prepareStatement(sql);
			ResultSet rset = stmt.executeQuery();
			Modalidade m = null;
			while (rset.next()) {
				m = new Modalidade(rset.getInt("id"), rset.getString("nome"),
						rset.getString("descricao"));

			}

			rset.close();
			stmt.close();
			connection.close();
			return m;

		} catch (SQLException e) {
			throw new RuntimeException(e);
		}

	}
a minha opcao foi fazer o seguinte
String sql ="select * from modalidade where id="+id;
e funciona so que imagina que eu tivesse que verificar varios atributos teria que concatenar sempre e iria ser ilegivel! Ajudem-me pls

3 Respostas

W

Nao precisa ficar concatenando string nao, eh so fazer:

PreparedStatement stmt = connection.prepareStatement(sql);  
stmt.setInt(1, id);

Primeiro argumento do setInt eh o indice do parametro, no seu caso eh 1 porque:

String sql = "select * from modalidade where id=?";

//Daniel

biguz

Daniel essa eh uma optma solucao… gt dat agune…

agune

Thanks

windsofhell:
Nao precisa ficar concatenando string nao, eh so fazer:

PreparedStatement stmt = connection.prepareStatement(sql);  
stmt.setInt(1, id);

Primeiro argumento do setInt eh o indice do parametro, no seu caso eh 1 porque:

String sql = "select * from modalidade where id=?";

//Daniel

Criado 8 de setembro de 2011
Ultima resposta 8 de set. de 2011
Respostas 3
Participantes 3