Ola pessoal, me ajudem!
Eu estou tentando fazer um sisteminha para um trabalho da facu e estou tendo problemas para fazer conexão com banco de dados, quer dizer, com um comando em especifico que teima em não funcionar. O banco foi feito em MySQL.
Foi assim que eu conectei o sistema com o bd:
[code]driver = “org.gjt.mm.mysql.Driver”;
url = “jdbc:mysql://localhost/projetointegrado”;
usuario = “root”;
senha = “sleipnir”;
try
{
Class.forName(driver);
conexao = DriverManager.getConnection(url, usuario, senha);
statement = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
rs = statement.executeQuery(“select * from notificacao”);
if (rs.next())
{
tNumero.setText(rs.getString(“numero”));
tData.setText(rs.getString(“data_notificacao”));
tDescricao.setText(rs.getString(“descricao_prod”));
tQtde.setText(rs.getString(“qtde”));
tCategoria.setText(rs.getString(“categoria”));
tPeso.setText(rs.getString(“peso_unitario”));
tValUnit.setText(rs.getString(“valor_unitario”));
tLogradouro.setText(rs.getString(“logradouro”));
tMunicipio.setText(rs.getString(“municipio”));
tEstado.setText(rs.getString(“estado”));
RegiaoEntrega.setSelectedItem(rs.getString(“regiao”));
}
else
{
JOptionPane.showMessageDialog(this, “Não há mais dados!”);
rs.previous();
}
}
catch(ClassNotFoundException Driver)
{
JOptionPane.showMessageDialog(null,"Driver não localizado: "+Driver);
}
catch(SQLException Fonte)
{
JOptionPane.showMessageDialog(null,"Deu erro na conexão "+
"com a fonte de dados: "+Fonte);
}[/code]
Ai eu tenho um botão que serve para incluir itens no bd, segue abaixo:
[code]public void actionPerformed(ActionEvent e)
{
if (e.getSource()==bIncluir)
{
try{
rs.updateString("numero", tNumero.getText());
rs.updateString("data_notificacao", tData.getText());
rs.updateString("descricao_prod", tDescricao.getText());
rs.updateString("qtde", tQtde.getText());
rs.updateString("valor_unitario", tValUnit.getText());
rs.updateString("peso_unitario", tPeso.getText());
rs.updateString("categoria", tCategoria.getText());
rs.updateString("logradouro", tLogradouro.getText());
rs.updateString("municipio", tMunicipio.getText());
rs.updateString("estado", tEstado.getText());
//rs.updateString("regiao", (String) RegiaoEntrega.getSelectedItem());
rs.insertRow();
JOptionPane.showMessageDialog(null, "Registro Inserido!");
//reposiciono no registro atual, atualizando o resultSet com o que tem no banco
int posAtual = rs.getRow();
rs = statement.executeQuery("SELECT * FROM notificacao");
rs.absolute(posAtual);
rs.next();
tNumero.setText(rs.getString("numero"));
tData.setText(rs.getString("data_notificacao"));
tDescricao.setText(rs.getString("descricao_prod"));
tQtde.setText(rs.getString("qtde"));
tCategoria.setText(rs.getString("categoria"));
tPeso.setText(rs.getString("peso_unitario"));
tValUnit.setText(rs.getString("valor_unitario"));
tLogradouro.setText(rs.getString("logradouro"));
tMunicipio.setText(rs.getString("municipio"));
tEstado.setText(rs.getString("estado"));
RegiaoEntrega.setSelectedItem(rs.getString("regiao"));
}
catch(SQLException ex)
{
JOptionPane.showMessageDialog(this,"Problemas no comando SQL: "+ex);
}
}[/code]
Então pessoal…o sistema conecta, fica bunitinho, ai quando eu acioo o botão incluir aparece a mensagem:
java.sql.SQLException:Not on insert row
o que é isso? Tem alguma coisa errada no código, pois eu ja utilizei isso com uma conexão com Access, que em tese funciona da mesma forma (quando tratamos de utilizar os comando o resultSet).
Me ajudem!!! Obrigado!