Metodo Altera Cliente não funciona


public void altera(Contato contato) throws SQLException
	{
		java.sql.PreparedStatement stmt = this.connection.prepareStatement("update contatos set  nome=?, email=?, endereco=?, tel=?, bairro=? where id=?");
				
		stmt.setInt(1,contato.getId());
		stmt.setString(2,contato.getNome());
		stmt.setString(3,contato.getEmail());
		stmt.setString(4,contato.getEndereco());
		stmt.setString(5,contato.getTel());
		stmt.setString(6,contato.getBairro());
		
		
		
		stmt.execute();
		stmt.close();
	}

No main, eu contruo o objeto e mando ele para classe dao,chamando este metodo altera, mas não esta funcioando, alguém pode me dizer o que esta errado, pois não esta apresentando nenhum erro

Obrigado

tente o método executeUpdate();

Renatu

Eu ja tentei o executeUpdate() e mesmo assim não deu certo, não entendo o que pode estar errado, não esta apresentando nenhum erro!!!

hm, reli seu código com mais atençao…

olha:

update contatos set nome=?, email=?, endereco=?, tel=?, bairro=? where id=?

Os números colocados nos métodos dos preparedstatements correspondem aos pontos de interrogaçao… assim, 1 é a primeira interrogaçao, 2 a segunda… e assim por diante…

voce está fazendo:

stmt.setInt(1,contato.getId());
 		stmt.setString(2,contato.getNome());
 		stmt.setString(3,contato.getEmail());
 		stmt.setString(4,contato.getEndereco());
 		stmt.setString(5,contato.getTel());
 		stmt.setString(6,contato.getBairro());

A primeira interrogaçao nao corresponde ao Id, e sim ao Nome… e a segunda nao corresponde ao nome, e sim ao email… e assim por diante… e a ultima (6) corresponde ao id… entao corrija isso, e deve funcionar…

Valeu Renatu, kra eu tinha resolvido ainda pouco mas não tinha entendido o código, agora ficou claro!!!


public void altera(Contato contato) throws SQLException
	{
	            java.sql.PreparedStatement stmt = this.connection.prepareStatement("update contatos set  nome=?, email=?, endereco=?, tel=?, bairro=? where id=?");
				
		
		stmt.setString(1,contato.getNome());
		stmt.setString(2,contato.getEmail());
		stmt.setString(3,contato.getEndereco());
		stmt.setString(4,contato.getTel());
		stmt.setString(5,contato.getBairro());
		stmt.setInt(6,contato.getId());
		
		
		stmt.executeUpdate();
		stmt.close();
		
		System.out.println("Alterado com Sucesso");
	}

Valeu!!!