Adicioneio o comando mais não adiantou, continua sem funcionar.
Segue como ficou:
CLASSE DAOCliente
package Modelo;
import java.sql.*;
import java.util.Vector;
public class DAOCliente
{
private Connection c;
private PreparedStatement PS;
private ResultSet R;
public DAOCliente()
{
try
{
Class.forName("org.postgresql.Driver");
c = DriverManager.getConnection("jdbc:postgresql:bancoVendas", "postgres", "post");
PS = null;
R = null;
}
catch(Exception e)
{
}
}
public void cadastrar (Cliente C)
{
try
{
PS = c.prepareStatement("INSERT INTO cliente VALUES(?,?,?,?)");
PS.setString(1,C.getCodigo());
PS.setString(2,C.getNome());
PS.setString(3,C.getEndereco());
PS.setString(4,C.getTel_cel());
PS.executeUpdate();
//executar SQL
}
catch(Exception e)
{
}
}
public void alterar(Cliente C)
{
try
{
PS = c.prepareStatement("UPDATE cliente SET nome=?,endereco=?,tel_cel=? WHERE codigo=?");
PS.setString(1,C.getCodigo());
PS.setString(2,C.getNome());
PS.setString(3,C.getEndereco());
PS.setString(4,C.getTel_cel());
PS.executeUpdate();
}
catch (Exception e)
{
}
}
public void excluir (Cliente C){
try{
PS = c.prepareStatement("DELETE FROM cliente WHERE codigo=?");
PS.setString(1,C.getCodigo());
PS.executeUpdate();
}
catch(Exception e){
}
}
public Cliente consultar (Cliente C){
try{
PS = c.prepareStatement("SELECT * FROM cliente WHERE codigo=?");
PS.setString(1,C.getCodigo());
R = PS.executeQuery();
if(R.next()){
C.setNome(R.getString("Nome"));
C.setEndereco(R.getString("Endereco"));
C.setTel_cel(R.getString("Tel/Cel"));
PS.executeUpdate();
return C;
}
else
return null;
}
catch(Exception e){
return null;
}
}
public void finalize()
{
//metodo automatico para fechamento de pendencias.
try
{
PS.close();
c.close();
}
catch(Exception e)
{
}
}
}
-------------------------------------------------------------------------
CLASSE ControleCliente
package Controle;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.util.Vector;
import Modelo.*;
import Visual.*;
public class ControleCliente implements ActionListener
{
private JFrame tela;
public ControleCliente(JFrame tela)
{
this.tela = tela;
}
public ControleCliente()
{
}
public void actionPerformed(ActionEvent e)
{
JPanel painel = (JPanel)tela.getContentPane().getComponent(0);
JScrollPane sPainel = (JScrollPane)painel.getComponent(8);
JViewport JV = (JViewport)sPainel.getComponent(0);
JTable tabela = (JTable)JV.getComponent(0);
DefaultTableModel DTM = (DefaultTableModel)tabela.getModel();
Cliente C = new Cliente();
DAOCliente DAO = new DAOCliente();
JTextField codigo = (JTextField)painel.getComponent(1);
JTextField nome = (JTextField)painel.getComponent(3);
JTextField endereco = (JTextField)painel.getComponent(5);
JTextField tel_cel = (JTextField)painel.getComponent(7);
C.setCodigo(codigo.getText());
C.setNome(nome.getText());
C.setEndereco(endereco.getText());
C.setTel_cel(tel_cel.getText());
if(e.getActionCommand().equals("Cadastrar"))
{
DTM.addRow(new String[]{C.getCodigo(),C.getNome(),C.getEndereco(),C.getTel_cel()});
DAO.cadastrar(C);
JOptionPane.showMessageDialog(null,"Cadastrado Confirmado");
codigo.setText("");
nome.setText("");
endereco.setText("");
tel_cel.setText("");
}
if (e.getActionCommand().equals("Alterar"))
{
DAO.alterar(C);
for(int i=0;i<DTM.getRowCount();i++)
{
if(DTM.getValueAt(0,i).equals(C.getCodigo()))
{
DTM.setValueAt(C.getNome(),1,i);
DTM.setValueAt(C.getEndereco(),1,i);
DTM.setValueAt(C.getTel_cel(),1,i);
break;
}
}
JOptionPane.showMessageDialog(null,"Alteração Confirmada");
codigo.setText("");
nome.setText("");
endereco.setText("");
tel_cel.setText("");
}
if(e.getActionCommand().equals("Excluir")){
boolean achou=false; int pos=0;
DAO.excluir(C);
for(int i=0;i<DTM.getRowCount();i++){
if(DTM.getValueAt(0,i).equals(C.getCodigo())){
pos=i;
achou=true;
}
if(achou)
{
DTM.removeRow(pos);
break;
}
}
JOptionPane.showMessageDialog(null,"Cadastro Excluído");
codigo.setText("");
nome.setText("");
endereco.setText("");
tel_cel.setText("");
}
if(e.getActionCommand().equals("Consultar"))
{
C=DAO.consultar(C);
if(C == null){
JOptionPane.showMessageDialog(null,"Cadastro Inexistente");
codigo.setText("");
nome.setText("");
endereco.setText("");
tel_cel.setText("");
}
else
{
codigo.setText(C.getCodigo());
nome.setText(C.getNome());
endereco.setText(C.getEndereco());
tel_cel.setText(C.getTel_cel());
JOptionPane.showMessageDialog(null,"Consulta efetuada com sucesso");
//DTM.addRow(new String[]{A.getMat(),A.getNome(),A.getTel(),A.getData()});
}
}
if(e.getActionCommand().equals("Sair"))
{
tela.dispose();
}
}
}
Só está funcionando os comandos Cadastrar, excluir e sair. O Alterar e o consultar não funcionam.
Tem idéia do que pode ser?>