Delete from tabela.[RESOLVIDO]

pessoal não estou conseguindo excluir os dados do banco …

vou postar o que acontece

//cadastro delete

[code]public boolean delete(String cod){

	try { 


		con = DAOConexao.getConn(); 

		//String sql = " DELETE FROM tb_Cadastro where codigo = %s ";

		String sql = "DELETE FROM tb_Cadastro where codigo = " + cod;
		pstm = con.prepareStatement(sql);
		pstm.executeUpdate();



	}catch(Exception e){
		System.out.println(e.toString());
	}finally{

		try{
			pstm.close(); 
			//con.close();
		}
		catch(Exception e){


		} 		
	} 		

	return true; 

}
[/code]

//botão delete no frame

[code]private void btnDelActionPerformed(java.awt.event.ActionEvent evt) {

	Mensagem mensagem = new Mensagem(this, "Confirmação", "Deseja excluir cadastro ", Mensagem.MSG_BOTAO_SIM_NAO_CANCELA, Mensagem.MSG_ICONE_PERGUNTA);
	if (mensagem.getBotaoClicado() == Mensagem.MSG_CLICK_SIM ) 
	{

String cod = txtDel.getText(); // o problema é que não tenhu mais esse txtDel…pq não preciso digitar um numero a ser excluido apenas o botão.

                                          if(cod != null && !cod.equals("")){ 
			cad.delete(cod);
		}
		System.out.println(" Item Deletado!!! ");

		new Mensagem(this, "Aviso", "Item deletado", Mensagem.MSG_BOTAO_OK, Mensagem.MSG_ICONE_ERRO);

		//limpaDados();
	}
}[/code]

// classe controlle

[code]public boolean delete(String cod) {

	return dao.delete(cod);
}[/code]

Mais antes vc precisava digitar o numero para excluir ?

qual o erro?

verifique primeiro se o parametro esta chegando.
mande imprimir na tela de console:

[code]System.out.println(cod);

//se estiver, faça o codigo da seguinte maneira

PreparedStatement prepare = null;
String sql = “delete from tb_Cadastro where codigo=?;”;
try{
prepare= con.prepareStatement(sql);
prepare.setString(1,cod);
prepare.execute();
} catch (SQLException e) {
e.printStackTrace();
}finally{
if(prepare!=null){
try {
prepare.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}[/code]

então antes eu tinha um campo pra digitar o codigo para exclusão , mas naum achu necessario !

Pq eu não vo saber qual codigo eu kero excluir que foi cadastrado…então o que pretendo fazer é qq consultar depois excluo o produto!!!

mas não esta dando certo!!

no console não da erro !

Cara a meu ver por questoes de boas praticas eu sempre gosto de saber o codigo do registro que estou excluindo.
Nao sei quais são seus motivos para nao querer saber. Mais e uma coisa que eu lhe aconselho sempre exibir.

No seu caso vc pode programar um evento no botão a qual chame um evento na camada de dados. Da seguinte maneira:
Evento do Botão:

[code]
private void ExcluirActionPerformed(java.awt.event.ActionEvent evt) {

    CadastroControle cadastro = new CadastroControle();
    Cadastro a = new Cadastro();

    a.setMatricula(Integer.parseInt(Matricula.getText()));

    try {

        cadastro.deletar(a);
        JOptionPane.showMessageDialog(null,"Dado Deletado Com Sucesso!","", JOptionPane.INFORMATION_MESSAGE);

    } catch (SQLException ex) {
        JOptionPane.showMessageDialog(null,"Erro no SQL " + ex.getMessage(),"", JOptionPane.ERROR_MESSAGE);
    } catch (ClassNotFoundException ex) {
        JOptionPane.showMessageDialog(null,"Driver não Encontrado " + ex.getMessage(),"", JOptionPane.ERROR_MESSAGE);
    }


}[/code]

Ae vc programa a exclução em uma outra classe:

    public void deletar(int matricula) throws SQLException, ClassNotFoundException
    {
        
            ConectarBanco cb = new ConectarBanco();
            Statement stm = cb.conectar();
            String comando="DELETE FROM celular WHERE matricula = " + matricula + ";";
            stm.executeUpdate(comando);
      
    }

Trabalhando dessa maneira acredito eu que ira funcionar. Alem de vc ter seu codigo um pouco melhor desenvolvido.
Bons codigos

isso me ajudo brother estava com o msm problema!