Bom eu to fazendo um trabalho academico para uma aplicação acessar o access. Eu fiz um classe pra acesso do sql, com os comandos e tal. O problema é tudo compila qd executo um programa pra testar os comandos nao aparece nenhuma mensagem de erro. Usando as intruções de delete e select tudo funciona, mas quando eu uso o insert into e o update e confiro no banco os campos estão vazios é como se eu nao tivesse executado o programa. Alguem tem alguma ideia ae? Abraços
Vai um trecho dos codigos:
[code]public AccessEntradaDAO() throws SQLException, ClassNotFoundException
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
url="jdbc:odbc:OFICINA";
con=DriverManager.getConnection(url,"usuario","senha");
stmt= con.createStatement();
System.out.println("Passa pelo construtor");
}
public void insereEntrada(Entrada e, char tipo) throws SQLException
{
String strData = DateFormat.getDateInstance().format(e.getDataIn());
String clausula = "INSERT INTO entrada(codigo, dataentrada, descproblema, placa, telefone,estado, tipo)" +
"VALUES(\'" + e.getCodigo() + "\', \'" + strData +"\', " +"\'" + e.getDescPro() +"\', " + "\'" +
e.getPlaca() + "\', " + "\'" + e.getTelefone() +"\', \'"+ e.getEstado() + "\', \'" + tipo + "\')";
stmt.executeUpdate(clausula);
}
//Instrução de delete que funciona normal
public void deletaEntrada(String num) throws SQLException
{
String clausula = "delete from entrada where codigo = " + "\'"+ num +"\'";
stmt.executeUpdate(clausula);
}[/code]
Ai o que ocorre é o seguinte, e ocorre para as instruções de insert update e delete onde eu uso o executeUpdate.
om o problema tá o seguinte, eis o porque não tá aparecenod lá:
Por exemplo no programa main eu chamo somente 1 vez apenas um comando:
Bom era pra inserir normalmente, mas nao aparece nada no banco, no entando se eu fizer assim:
insereEntrada(entrada1);
insereEntrada(entrada2);
Então o que ocorre é que o primeiro comando executa instrução e insere normalmente no banco, já o segundo não. É como se precisasse do executeUpdate do segundo comando ou algo parecido pra poder concluir o primeiro. Se eu fizer:
[code]
insereEntrada(entrada1);
insereEntrada(entrada2);
insereEntrada(entrada3); [/code]
A o primeiro e o segundo comando são inseridos no banco e o terceiro não. Bom alguém sabe dizer pq ocorre tal coisa. Se existe uma solução. Desde já agradeço.
[]'s