Ir ao conteúdo
  • Cadastre-se

Erro ao acessar banco de dados Access


Augusto de Paula

Posts recomendados

Olá galera, estou iniciando em Java e estou com um probleminha. Quero montar uma tela de cadastro simples interligando com o Access, colocando eventos nos botões de Inserir, Alterar e outros. Mas meu sistema dá erro na Statement e não executa o evento quando clico no botão. HELP!

Código

package BD;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.sql.*;

import javax.swing.*;

public class BotaoPainel extends JPanel{

private static final long serialVersionUID = 1L;

/**

* @param args

*/

JButton btnConsultar,btnAdicionar,btnAlterar,btnLimpar,btnApagar;

private MontaTela campos;

private JTextArea saida;

private Connection conecta;

public BotaoPainel(Connection c, MontaTela s, JTextArea t){

setLayout(new GridLayout(1,5));

btnAdicionar = new JButton("Adicionar");

btnAdicionar.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent evt){

try{

Statement executaSQL = conecta.createStatement();

if (!campos.tfData.getText().equals("") && !campos.tfNome.getText().equals("")){

String query = "INSERT INTO Clientes(Data,Nome,RG,CPF,Endereço,Cidade,UF,CEP,Sexo)"+

" VALUES ('"+campos.tfCodigo.getText()+"','"+campos.tfData.getText()+"','"+campos.tfNome.getText()+

"','"+campos.tfRg.getText()+"','"+campos.tfCpf.getText()+"','"+campos.tfEndereco.getText()+

"','"+campos.tfCidade.getText()+"','"+campos.tfUf.getText()+"','"+campos.tfCep.getText()+

"','"+campos.rbMasculino.getText()+"','"+campos.rbFeminino.getText()+"')";

int result = executaSQL.executeUpdate(query);

if (result == 1){

saida.append("Inserido com sucesso! \n");

campos.tfData.setText("");

campos.tfNome.setText("");

campos.tfRg.setText("");

campos.tfCpf.setText("");

campos.tfEndereco.setText("");

campos.tfCidade.setText("");

campos.tfUf.setText("");

campos.tfCep.setText("");

campos.rbMasculino.setVisible(true);

campos.rbFeminino.setVisible(true);

}

else{

saida.append("Erro na inclusão! \n");

}

}

else

JOptionPane.showMessageDialog(null, "PREENCHA OS CAMPOS","Atenção",JOptionPane.ERROR_MESSAGE);

executaSQL.close();

}

catch(SQLException sqlex){

sqlex.printStackTrace();

saida.append(sqlex.toString());

}

}

});

add(btnAdicionar);

btnConsultar = new JButton("Consultar");

add(btnConsultar);

btnAlterar = new JButton("Alterar");

add(btnAlterar);

btnApagar = new JButton("Apagar");

add(btnApagar);

btnLimpar = new JButton("Limpar");

add(btnLimpar);

}

}

package BD;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.sql.*;

import javax.swing.*;

public class BotaoPainel extends JPanel{

private static final long serialVersionUID = 1L;

/**

* @param args

*/

JButton btnConsultar,btnAdicionar,btnAlterar,btnLimpar,btnApagar;

private MontaTela campos;

private JTextArea saida;

private Connection conecta;

public BotaoPainel(Connection c, MontaTela s, JTextArea t){

setLayout(new GridLayout(1,5));

btnAdicionar = new JButton("Adicionar");

btnAdicionar.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent evt){

try{

Statement executaSQL = conecta.createStatement();

if (!campos.tfData.getText().equals("") && !campos.tfNome.getText().equals("")){

String query = "INSERT INTO Clientes(Data,Nome,RG,CPF,Endereço,Cidade,UF,CEP,Sexo)"+

" VALUES ('"+campos.tfCodigo.getText()+"','"+campos.tfData.getText()+"','"+campos.tfNome.getText()+

"','"+campos.tfRg.getText()+"','"+campos.tfCpf.getText()+"','"+campos.tfEndereco.getText()+

"','"+campos.tfCidade.getText()+"','"+campos.tfUf.getText()+"','"+campos.tfCep.getText()+

"','"+campos.rbMasculino.getText()+"','"+campos.rbFeminino.getText()+"')";

int result = executaSQL.executeUpdate(query);

if (result == 1){

saida.append("Inserido com sucesso! \n");

campos.tfData.setText("");

campos.tfNome.setText("");

campos.tfRg.setText("");

campos.tfCpf.setText("");

campos.tfEndereco.setText("");

campos.tfCidade.setText("");

campos.tfUf.setText("");

campos.tfCep.setText("");

campos.rbMasculino.setVisible(true);

campos.rbFeminino.setVisible(true);

}

else{

saida.append("Erro na inclusão! \n");

}

}

else

JOptionPane.showMessageDialog(null, "PREENCHA OS CAMPOS","Atenção",JOptionPane.ERROR_MESSAGE);

executaSQL.close();

}

catch(SQLException sqlex){

sqlex.printStackTrace();

saida.append(sqlex.toString());

}

}

});

add(btnAdicionar);

btnConsultar = new JButton("Consultar");

add(btnConsultar);

btnAlterar = new JButton("Alterar");

add(btnAlterar);

btnApagar = new JButton("Apagar");

add(btnApagar);

btnLimpar = new JButton("Limpar");

add(btnLimpar);

}

}

Erro:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

at BD.BotaoPainel$1.actionPerformed(BotaoPainel.java:35)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:231

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)

at java.awt.Component.processMouseEvent(Component.java:6289)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)

at java.awt.Component.processEvent(Component.java:6054)

at java.awt.Container.processEvent(Container.java:2041)

at java.awt.Component.dispatchEventImpl(Component.java:4652)

at java.awt.Container.dispatchEventImpl(Container.java:2099)

at java.awt.Component.dispatchEvent(Component.java:4482)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:423

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:416

at java.awt.Container.dispatchEventImpl(Container.java:2085)

at java.awt.Window.dispatchEventImpl(Window.java:247

at java.awt.Component.dispatchEvent(Component.java:4482)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)

at java.awt.EventQueue.access$000(EventQueue.java:85)

at java.awt.EventQueue$1.run(EventQueue.java:603)

at java.awt.EventQueue$1.run(EventQueue.java:601)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:9

at java.awt.EventQueue$2.run(EventQueue.java:617)

at java.awt.EventQueue$2.run(EventQueue.java:615)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...