Botões

Boa Noite…!
Estou com uma dificuldade de encontrar um erro na sintaxe do meu botão cadastrar… Vocês podem me ajudar?

[code]
private void cmdCadActionPerformed(java.awt.event.ActionEvent evt) {
if (evt.getSource()==cmdCad)
//inserir
{
try
{
String SQL = “INSERT INTO ALUNO (COD,NOME,ENDE,” +
“BAIRRO,CEP,RG,DATA, TELEFONE, EMAIL) Values (’”+
txtCod.getText()+"’,’"+
txtTelefone.getText()+"’,’"+
txtDataNascimento.getText()+"’,’"+
txtNome.getText()+"’,’"+
txtEnd.getText()+"’,’"+
txtBairro.getText()+"’,’"+
txtCep.getText()+"’,’"+
txtRg.getText()+"’,’"+
txtEmail.getText()+"’)";

    Conexao.executeUpdate(SQL);
   JOptionPane.showMessageDialog(null,"Gravado com sucesso");
        limpaCampos();
    }
  catch(SQLException e)
  	{
  	 if (e.getMessage().equals("General error")) 
  	 	JOptionPane.showMessageDialog(null,"Filme já Cadastrado");	
  	 else	
  	    JOptionPane.showMessageDialog(null,"Data Inválida");	
    }
    
}  [/code]

Obrigada desde já

esquecii… está dando erro na linha 23

pode postar todo o codigo?

[code]package viwer;

import java.sql.SQLException;
import javax.swing.JOptionPane;
import utilidades.Conexao;

/**
*

  • @author Mega family
    */
    public class FrmAluno extends javax.swing.JFrame {

    /** Creates new form FrmAluno */
    public FrmAluno() {
    initComponents();
    }

    /** This method is called from within the constructor to

    • initialize the form.

    • WARNING: Do NOT modify this code. The content of this method is

    • always regenerated by the Form Editor.
      */
      @SuppressWarnings(“unchecked”)
      //
      private void initComponents() {

      lblCod = new javax.swing.JLabel();
      lblNome = new javax.swing.JLabel();
      lblEnd = new javax.swing.JLabel();
      lblBairro = new javax.swing.JLabel();
      lblCep = new javax.swing.JLabel();
      lblRg = new javax.swing.JLabel();
      lblTel = new javax.swing.JLabel();
      lblDataNascimento = new javax.swing.JLabel();
      lblEmail = new javax.swing.JLabel();
      txtCod = new javax.swing.JTextField();
      txtNome = new javax.swing.JTextField();
      txtEnd = new javax.swing.JTextField();
      txtBairro = new javax.swing.JTextField();
      txtEmail = new javax.swing.JTextField();
      cmdNovo = new javax.swing.JButton();
      cmdCad = new javax.swing.JButton();
      cmdExcluir = new javax.swing.JButton();
      cmdAlterar = new javax.swing.JButton();
      cmdSair = new javax.swing.JButton();
      cmdConsultar = new javax.swing.JButton();
      txtDataNascimento = new javax.swing.JFormattedTextField();
      txtRg = new javax.swing.JFormattedTextField();
      txtTelefone = new javax.swing.JFormattedTextField();
      txtCep = new javax.swing.JFormattedTextField();

      setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
      setMaximizedBounds(new java.awt.Rectangle(400, 400, 0, 0));
      getContentPane().setLayout(null);

      lblCod.setText(“Código”);
      getContentPane().add(lblCod);
      lblCod.setBounds(10, 10, 100, 14);

      lblNome.setText(“Nome”);
      getContentPane().add(lblNome);
      lblNome.setBounds(120, 10, 100, 14);

      lblEnd.setText(“Endereço”);
      getContentPane().add(lblEnd);
      lblEnd.setBounds(10, 60, 130, 14);

      lblBairro.setText(“Bairro”);
      getContentPane().add(lblBairro);
      lblBairro.setBounds(10, 110, 100, 14);

      lblCep.setText(“CEP”);
      getContentPane().add(lblCep);
      lblCep.setBounds(170, 110, 90, 14);

      lblRg.setText(“RG”);
      getContentPane().add(lblRg);
      lblRg.setBounds(10, 160, 80, 14);

      lblTel.setText(“Telefone”);
      getContentPane().add(lblTel);
      lblTel.setBounds(10, 210, 120, 14);

      lblDataNascimento.setText(“Data de Nascimento”);
      getContentPane().add(lblDataNascimento);
      lblDataNascimento.setBounds(160, 160, 170, 14);

      lblEmail.setText(“Email”);
      getContentPane().add(lblEmail);
      lblEmail.setBounds(160, 210, 90, 14);

      txtCod.setEditable(false);
      getContentPane().add(txtCod);
      txtCod.setBounds(10, 30, 70, 20);

      txtNome.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt) {
      txtNomeActionPerformed(evt);
      }
      });
      getContentPane().add(txtNome);
      txtNome.setBounds(120, 30, 270, 20);
      getContentPane().add(txtEnd);
      txtEnd.setBounds(10, 80, 300, 20);
      getContentPane().add(txtBairro);
      txtBairro.setBounds(10, 130, 130, 20);
      getContentPane().add(txtEmail);
      txtEmail.setBounds(160, 230, 230, 20);

      cmdNovo.setText(“Novo”);
      cmdNovo.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt) {
      cmdNovoActionPerformed(evt);
      }
      });
      getContentPane().add(cmdNovo);
      cmdNovo.setBounds(10, 280, 80, 23);

      cmdCad.setText(“Cadastrar”);
      cmdCad.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt) {
      cmdCadActionPerformed(evt);
      }
      });
      getContentPane().add(cmdCad);
      cmdCad.setBounds(110, 280, 80, 23);

      cmdExcluir.setText(“Excluir”);
      getContentPane().add(cmdExcluir);
      cmdExcluir.setBounds(210, 280, 80, 23);

      cmdAlterar.setText(“Alterar”);
      getContentPane().add(cmdAlterar);
      cmdAlterar.setBounds(310, 280, 80, 23);

      cmdSair.setText(“Sair”);
      cmdSair.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt) {
      cmdSairActionPerformed(evt);
      }
      });
      getContentPane().add(cmdSair);
      cmdSair.setBounds(310, 330, 80, 23);

      cmdConsultar.setText(“Consultar”);
      getContentPane().add(cmdConsultar);
      cmdConsultar.setBounds(210, 330, 80, 23);

      txtDataNascimento.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter(java.text.DateFormat.getDateInstance(java.text.DateFormat.MEDIUM))));
      getContentPane().add(txtDataNascimento);
      txtDataNascimento.setBounds(160, 180, 110, 20);

      try {
      txtRg.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##.###.###-#")));
      } catch (java.text.ParseException ex) {
      ex.printStackTrace();
      }
      getContentPane().add(txtRg);
      txtRg.setBounds(10, 180, 130, 20);
      getContentPane().add(txtTelefone);
      txtTelefone.setBounds(10, 230, 130, 20);

      try {
      txtCep.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("#####-###")));
      } catch (java.text.ParseException ex) {
      ex.printStackTrace();
      }
      getContentPane().add(txtCep);
      txtCep.setBounds(170, 130, 160, 20);

      pack();
      }//

    private void txtNomeActionPerformed(java.awt.event.ActionEvent evt) {
    // TODO add your handling code here:
    }

    private void cmdSairActionPerformed(java.awt.event.ActionEvent evt) {
    dispose(); // TODO add your handling code here:
    }

    private void cmdNovoActionPerformed(java.awt.event.ActionEvent evt) {
    limpaCampos(); // TODO add your handling code here:
    }

    private void cmdCadActionPerformed(java.awt.event.ActionEvent evt) {
    if (evt.getSource()==cmdCad)
    //inserir
    {
    try
    {
    String SQL = “INSERT INTO ALUNO (COD,NOME,ENDE,” +
    “BAIRRO,CEP,RG,DATA, TELEFONE, EMAIL) Values (’”+
    txtCod.getText()+"’,’"+
    txtTelefone.getText()+"’,’"+
    txtDataNascimento.getText()+"’,’"+
    txtNome.getText()+"’,’"+
    txtEnd.getText()+"’,’"+
    txtBairro.getText()+"’,’"+
    txtCep.getText()+"’,’"+
    txtRg.getText()+"’,’"+
    txtEmail.getText()+"’)";

     Conexao.executeUpdate(SQL);
    JOptionPane.showMessageDialog(null,"Gravado com sucesso");
         limpaCampos();
     }
    

    catch(SQLException e)
    {
    if (e.getMessage().equals(“General error”))
    JOptionPane.showMessageDialog(null,“Filme já Cadastrado”);
    else
    JOptionPane.showMessageDialog(null,“Data Inválida”);
    }

    }

    /**

    • @param args the command line arguments
      */
      public static void main(String args[]) {
      java.awt.EventQueue.invokeLater(new Runnable() {
      public void run() {
      new FrmAluno().setVisible(true);
      }
      });
      }[/code]

essa é uma parte… estou fazendo no net beans

Oi,

Para saber qual é o erro :[code]

catch (Exception erro)
{
JOptionPane.showMessageDialog(null,“Erro,dados não foram gravados”+erro);// retornara o erro
}
[/code]

ou


catch(SQLException erro) {
    JOptionPane.showMessageDialog(null,"Erro,ao listar");
    erro.printStackTrace(); //isso vai imprimir a pilha de exceções no console, indicando, dentre outras         informacoes, a linha que deu problema.
}

catch(SQLException e) { if (e.getMessage().equals("General error")) JOptionPane.showMessageDialog(null,"Filme já Cadastrado"); else JOptionPane.showMessageDialog(null,"Data Inválida"); }
aqui que da o erro

[quote=gabikiwii]catch(SQLException e) { if (e.getMessage().equals("General error")) JOptionPane.showMessageDialog(null,"Filme já Cadastrado"); else JOptionPane.showMessageDialog(null,"Data Inválida"); }
aqui que da o erro[/quote]

Você tentou rodar com o código que eu passei?

Vou deixar um exemplo de como usar try catch,parece que vc quer validar os dados no catch,eles são validados no try.


{
    int rm=-1;
    if(tfRm.getText().length()==0)//o rm foi digitado?
    {
        JOptionPane.showMessageDialog(null,"Atenção:Digite o Rm");
        tfRm.requestFocus();
    }    //senão foi digitado
    else
    {
        try
        {
            rm=Integer.parseInt(tfRm.getText());
            if(rm<0)
            {
                JOptionPane.showMessageDialog(null,"Atenção:digite um valor numerico inteiro positivo");
                tfRm.requestFocus();
            }
        }
        catch(NumberFormatException exc)
        {
            JOptionPane.showMessageDialog(null,"Atenção:digite um valor numerico inteiro");
            tfRm.requestFocus();
        }
    }    
    return rm;
}

Posta a exception.

Use o PreparedStatement pra:

  1. Evitar ter que concatenar Strings desse jeito;
  2. Evitar ter que adicionar as aspas simples para Strings;
  3. Não errar o formato de datas do banco;
  4. Não dar erro caso seu usuário informe valores com aspas simples;
  5. Nâo correr o risco do ataque de dependency injection;
  6. Deixar o seu código mais legível e profissional.