Olá a todos!!
Estou com um problema no minha inserção de dados, o código executa normal, quando vou inserir dados no Frame e gravar ele da erro, mas não mostra onde esta o erro.
Se puderem me ajudar, sou novato em Java, estou usando o Mysql Workbench 5.6 SE
Desde já agradeço a atenção de todos que vierem a ler este topico.
[code]
package Dados;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Observable;
public class Registro extends Observable {
String cor;
String marca;
String Placa;
String modelo;
String AnoFab;
String Categoria;
String ID;
String Dados;
public String [] op;
public Object lista;
private Object moto;
private Object jScrollPane;
public static ResultSet rs;
private static Connection conn;
private static Statement stmt;
public String [] getop() {
return op;
}
public void setop(String[] op) {
this.op = op;
}
public String getCor() {
return cor;
}
public void setCor(String cor) {
this.cor = cor;
}
public String getMarca() {
return marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public String getModelo() {
return modelo;
}
public void setModelo(String modelo) {
this.modelo = modelo;
}
public String getAnoFab() {
return AnoFab;
}
public void setAnoFab(String string) {
this.AnoFab = string;
}
public String getCategoria() {
return Categoria;
}
public void setCategoria(String Categoria) {
this.Categoria = Categoria;
}
public String getID() {
return ID;
}
public void setID(String ID) {
this.ID = ID;
}
public String getDados() {
return Dados;
}
public void setDados(String Dados) {
this.Dados = Dados;
}
public void inserir() throws SQLException {
SQL dao = new SQL();
dao.inserir(ID,modelo,marca,cor,AnoFab,Categoria);
}
public void buscar() throws Exception {
SQL dao = new SQL();
dao.buscar(ID);
SQL.carregadados(this);
}
public void alterar() throws Exception {
SQL dao = new SQL();
dao.altera(ID,modelo,marca,cor,AnoFab,Categoria);
}
public void excluir() throws Exception {
SQL dao = new SQL();
dao.excluir(ID);
}
public ArrayList mostra() throws Exception{
String comando = "select * from moto";
conn = SQL.conectar();
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(comando);
ArrayList<Registro> lista = new ArrayList<Registro>();
while (rs.next()) {
Registro registro1 = new Registro();
registro1.setID(rs.getString("id"));
registro1.setModelo(rs.getString("placa"));
registro1.setModelo(rs.getString("modelo"));
registro1.setMarca(rs.getString("marca"));
registro1.setCor(rs.getString("cor"));
registro1.setAnoFab(rs.getString("AnoFab"));
registro1.setCategoria(rs.getString("Categoria"));
lista.add(registro1);
}
return lista;
}
}
package Dados;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.sql.PreparedStatement;
import java.sql.ResultSetMetaData;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import javax.swing.JOptionPane;
public class SQL {
public static Connection conn;
private static Statement stmt;
private static ResultSet busca;
private static ResultSet rsDados;
static Registro reg = new Registro();
final String sqlCriar ="insert into moto (placa, modelo,marca,AnoFab,cor,categoria) values (?,?,?,?,?,?)";
public static void main(String[] args) {
conectar();
}
public static Connection conectar() {
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test?";
String usuario = "root";
String senha = "12345";
conn = DriverManager.getConnection(url, usuario, senha);
} catch (ClassNotFoundException e) {
System.err.println("Nao conectou o driver no banco.Erro de Driver");
}
catch (SQLException e) {
System.err.println("Erro ao conectar.Erro sql" + e.getMessage());
}
return conn;
}
public void desconectar() {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void altera(String ID, String modelo, String marca, String cor,
String AnoFab, String Categoria) throws Exception {
conectar();
try {
stmt = conn.createStatement();
stmt.executeUpdate(("update moto set id=" + "'" + ID
+ "',modelo=" + "'" + modelo + "'," + "marca=" + "'"
+ marca + "',cor=" + "'" + cor + "'," + "anoFab=" + "'"
+ AnoFab + "',categoria=" + "'" + Categoria + "'where id='"
+ ID + "'"));
JOptionPane.showMessageDialog(null,
"Alterações feitas com sucesso!", "Aviso!",
JOptionPane.INFORMATION_MESSAGE);
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,
"Error Ao Gravar as Alterações!", "Error!",
JOptionPane.INFORMATION_MESSAGE);
}
}
// =========================================================================================================
public void inserir(String placa, String modelo, String marca, String cor,
String AnoFab, String Categoria) {
conn = conectar();
try {
stmt = conn.createStatement();
stmt.executeUpdate("insert into moto (placa, modelo,marca,AnoFab,cor,categoria) values (?,?,?,?,?,?)");
//stmt.executeUpdate(("insert into moto values('" + id
// + "',modelo=" + "'" + modelo + "'," + "marca=" + "'"
//+ marca + "',cor=" + "'" + cor + "'," + "anoFab=" + "'"
//+ AnoFab + "',categoria=" + "'" + Categoria + ""
//+ "'"));
System.out.println("insert into moto values('" + placa + "','"
+ modelo + "','" + marca + "','" + cor + "','" + AnoFab
+ "','" + Categoria + "');");
//stmt.executeUpdate("insert into moto values('" + placa + "','"
// + modelo + "','" + marca + "','" + cor + "','" + AnoFab
//+ "','" + Categoria +"");
JOptionPane.showMessageDialog(null,
"Moto Cadastrada!", "Aviso!",
JOptionPane.INFORMATION_MESSAGE);
} catch (SQLException e) {
JOptionPane
.showMessageDialog(
null,
"Error Ao Gravar!",
"Error!", JOptionPane.INFORMATION_MESSAGE);
}
}
// =======================================================================================
// ==============================================================================
public static void carregadados(Registro registro) throws SQLException {
try {
registro.setID(rsDados.getString("id"));
registro.setModelo(rsDados.getString("Placa"));
registro.setModelo(rsDados.getString("modelo"));
registro.setMarca(rsDados.getString("marca"));
registro.setCor(rsDados.getString("cor"));
registro.setAnoFab(rsDados.getString("anoFab"));
registro.setCategoria(rsDados.getString("categoria"));
}
catch (Exception e) {
}
}
// ======================================================================================
public ResultSet buscar(String ID) throws Exception {
conectar();
try {
stmt = conn.createStatement();
rsDados = stmt
.executeQuery("select * from moto where id like '"
+ ID + "'");
rsDados.next();
reg.setID(rsDados.getString("id"));
reg.setModelo(rsDados.getString("Placa"));
reg.setModelo(rsDados.getString("modelo"));
reg.setMarca(rsDados.getString("marca"));
reg.setCor(rsDados.getString("cor"));
reg.setAnoFab(rsDados.getString("anoFab"));
reg.setCategoria(rsDados.getString("categoria"));
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,
" não encontrado, Verefique os Dados Informados!",
"Error!", JOptionPane.INFORMATION_MESSAGE);
}
return busca;
}
// ========================================================================================
public ResultSet buscar2;
{
conectar();
try {
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(" select * from moto ");
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,
"não encontrado, Verefique os Dados Informados!",
"Error!", JOptionPane.INFORMATION_MESSAGE);
}
}
// ========================================================================================
public void excluir(String ID) throws Exception {
conectar();
try {
stmt = conn.createStatement();
stmt.executeUpdate("delete from moto where id='" + ID + "'");
JOptionPane.showMessageDialog(null,
"excluido com sucesso!", "Aviso!",
JOptionPane.INFORMATION_MESSAGE);
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,
"Exclusão não pode ser feita.!!!!", "Error!",
JOptionPane.INFORMATION_MESSAGE);
}
}
public static void carregaBusca1(Registro registro) throws SQLException {
ArrayList lista = new ArrayList();
String comando = "select * from moto";
conectar();
java.sql.Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(comando);
while (rs.next()) {
Registro registro1 = new Registro();
registro1.setID(rs.getString("id"));
registro.setModelo(rs.getString("Placa"));
registro1.setModelo(rs.getString("modelo"));
registro1.setMarca(rs.getString("marca"));
registro1.setCor(rs.getString("cor"));
registro1.setAnoFab(rs.getString("AnoFab"));
registro1.setCategoria(rs.getString("Categoria"));
lista.add(registro1);// adicionando no array
}
return;
}
}
package Tela;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import javax.swing.WindowConstants;
import Dados.Registro;
public class Layout extends javax.swing.JFrame {
public static final long serialVersionUID = 1L;
public static String[] colunas = {"Placa","Modelo","Marca","Cor","AnoFab",""};
public static String dados[][] = null;
public static JTable table = null;
public JLabel JTitulo;
public JLabel JMarca;
public JLabel jLabel2;
public JLabel jLabel3;
public JButton JBPesquisar;
public JButton JBTodos;
public JButton JBExcluir;
public JButton JBNovo;
public static JScrollPane jScrollPane1;
public JButton JBAlterar;
public JLabel jLabel5;
public JTextField JTID;
public JLabel jLabel4;
public JButton JBSalvar;
public JButton JBCancelar;
public JTextField JTCategoria;
public JTextField JTAnoFab;
public JTextField JTCor;
public JTextField JTMarca;
public JTextField JTModelo;
public JLabel jLabel1;
public JLabel JModelo;
Registro reg = new Registro();
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Layout inst = new Layout();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
});
}
public Layout() {
super("");
initGUI();
}
public JTable impritodos (){
ArrayList<Registro> lista = null;
try {
lista = reg.mostra();
} catch (Exception e) {
e.printStackTrace();
}
dados = new String[lista.size()][6];
for(int i=0; i<lista.size(); i++){
dados[i][0]=lista.get(i).getID();
dados[i][1]=lista.get(i).getModelo();
dados[i][2]=lista.get(i).getMarca();
dados[i][3]=lista.get(i).getCor();
dados[i][4]=lista.get(i).getAnoFab();
dados[i][5]=lista.get(i).getCategoria();
}
return table = new JTable (dados, colunas);
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);
{
JTitulo = new JLabel();
getContentPane().add(JTitulo);
JTitulo.setText("Cadastro de Motos ");
JTitulo.setBounds(27, 12, 394, 22);
JTitulo.setFont(new java.awt.Font("Segoe UI",1,24));
}
{
JModelo = new JLabel();
getContentPane().add(JModelo);
JModelo.setText("Modelo :");
JModelo.setBounds(27, 107, 108, 16);
}
{
JMarca = new JLabel();
getContentPane().add(JMarca);
JMarca.setText("Marca :");
JMarca.setBounds(27, 135, 107, 16);
}
{
jLabel1 = new JLabel();
getContentPane().add(jLabel1);
jLabel1.setText("Cor :");
jLabel1.setBounds(27, 168, 107, 16);
}
{
jLabel2 = new JLabel();
getContentPane().add(jLabel2);
jLabel2.setText("Ano de Fabricação : ");
jLabel2.setBounds(27, 201, 133, 16);
}
{
jLabel3 = new JLabel();
getContentPane().add(jLabel3);
jLabel3.setText("Categoria : ");
jLabel3.setBounds(27, 236, 107, 16);
}
{
JTModelo = new JTextField();
getContentPane().add(JTModelo);
JTModelo.setBounds(167, 104, 269, 23);
}
{
JTMarca = new JTextField();
getContentPane().add(JTMarca);
JTMarca.setBounds(167, 132, 269, 23);
}
{
JTCor = new JTextField();
getContentPane().add(JTCor);
JTCor.setBounds(167, 165, 269, 23);
}
{
JTAnoFab = new JTextField();
getContentPane().add(JTAnoFab);
JTAnoFab.setBounds(166, 198, 270, 23);
}
{
JTCategoria = new JTextField();
getContentPane().add(JTCategoria);
JTCategoria.setBounds(166, 233, 270, 23);
}
{
JBCancelar = new JButton();
getContentPane().add(JBCancelar);
JBCancelar.setText("Cancelar");
JBCancelar.setBounds(306, 403, 130, 23);
JBCancelar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
JTID.setText("");
JTModelo.setText("");
JTMarca.setText("");
JTCor.setText("");
JTAnoFab.setText("");
JTCategoria.setText("");
JTID.requestFocus();
}
});
}
{
JBSalvar = new JButton();
getContentPane().add(JBSalvar);
JBSalvar.setText("Salvar");
JBSalvar.setBounds(36, 403, 130, 23);
JBSalvar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
reg.setID(JTID.getText());
reg.setModelo(JTModelo.getText());
reg.setMarca(JTMarca.getText());
reg.setCor(JTCor.getText());
reg.setAnoFab(JTAnoFab.getText());
reg.setCategoria(JTCategoria.getText());
JTID.setText("");
JTModelo.setText("");
JTMarca.setText("");
JTCor.setText("");
JTAnoFab.setText("");
JTCategoria.setText("");
JTID.requestFocus();
try {
reg.inserir();
impritodos();
} catch (SQLException e) {
e.printStackTrace();
}
}
});
}
{
JBPesquisar = new JButton();
getContentPane().add(JBPesquisar);
JBPesquisar.setText("Buscar");
JBPesquisar.setBounds(171, 369, 130, 23);
JBPesquisar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
reg.setID(JTID.getText());
try {
reg.buscar();
JTID.setText(reg.getID());
JTModelo.setText(reg.getModelo());
JTMarca.setText(reg.getMarca());
JTCor.setText(reg.getCor());
JTAnoFab.setText(reg.getAnoFab());
JTCategoria.setText(reg.getCategoria());
JBAlterar.setEnabled(true);
JBSalvar.setEnabled(false);
JBExcluir.setEnabled(true);
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
{
jLabel4 = new JLabel();
getContentPane().add(jLabel4);
jLabel4.setText("");
jLabel4.setBounds(27, 40, 327, 16);
}
{
jLabel5 = new JLabel();
getContentPane().add(jLabel5);
jLabel5.setText("Placa : ");
jLabel5.setBounds(27, 80, 128, 16);
}
{
JTID = new JTextField();
getContentPane().add(JTID);
JTID.setBounds(167, 77, 269, 23);
}
{
JBAlterar = new JButton();
getContentPane().add(JBAlterar);
JBAlterar.setText("Alterar");
JBAlterar.setEnabled(false);
JBAlterar.setBounds(171, 403, 130, 23);
JBAlterar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
reg.setID(JTID.getText());
reg.setModelo(JTModelo.getText());
reg.setMarca(JTMarca.getText());
reg.setCor(JTCor.getText());
reg.setAnoFab(JTAnoFab.getText());
reg.setCategoria(JTCategoria.getText());
JTID.setText("");
JTModelo.setText("");
JTMarca.setText("");
JTCor.setText("");
JTAnoFab.setText("");
JTCategoria.setText("");
JTID.requestFocus();
try {
reg.alterar();
impritodos();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
{
JBNovo = new JButton();
getContentPane().add(JBNovo);
JBNovo.setText("Novo ");
JBNovo.setBounds(36, 369, 130, 23);
JBNovo.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
JTID.setText("");
JTModelo.setText("");
JTMarca.setText("");
JTCor.setText("");
JTAnoFab.setText("");
JTCategoria.setText("");
JTID.requestFocus();
JBSalvar.setEnabled(true);
JBAlterar.setEnabled(false);
JBExcluir.setEnabled(false);
}
});
}
{
JBExcluir = new JButton();
getContentPane().add(JBExcluir);
JBExcluir.setText("Excluir");
JBExcluir.setBounds(306, 369, 130, 23);
JBExcluir.setEnabled(false);
JBExcluir.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
reg.setID(JTID.getText());
try {
reg.excluir();
JBExcluir.setEnabled(false);
JTModelo.setText("");
JTMarca.setText("");
JTCor.setText("");
JTAnoFab.setText("");
JTCategoria.setText("");
JTID.setText("");
JTID.requestFocus();
impritodos();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
{
JBTodos = new JButton();
getContentPane().add(JBTodos);
JBTodos.setText("Buscar Todos");
JBTodos.setBounds(820, 37, 144, 23);
JBTodos.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
JTable tabelaRelatorio = new JTable();
tabelaRelatorio = impritodos();
tabelaRelatorio.setBounds(504, 71, 470, 365);
tabelaRelatorio.getTableHeader().setReorderingAllowed(false);
jScrollPane1 = new JScrollPane(tabelaRelatorio);
jScrollPane1.setBounds(508, 77, 462, 349);
getContentPane().add(jScrollPane1);
}
});
}
{
}
this.setSize(1024, 484);
} catch (Exception e) {
e.printStackTrace();
}
}
}[/code]