[code] public void inserirPagamento(Pagamentos pagamentos) throws SQLException, ClassNotFoundException{
String inserir = "INSERT INTO pagamentos (data, valor) VALUES (? , ?)";
Data hoje = new Data();
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/siprevi","root","");
stm = connection.prepareCall(inserir);
stm.setDate(1, Date.valueOf(hoje.dataFormatada()));
stm.setFloat(2, pagamentos.getValor());
connection.close();
}[/code]
o método dataFormatada() retorna uma string yyyy-MM-dd …
Ele não lança nenhuma exceção, mas o banco fica vazio!
Verifica o tipo de dados do bd, ou tambem pode ser as opções regionais e de idioma.
Espero ter ajudado
Faltou chamar a linha
Se não mandar a consulta rodar, ela não roda mesmo.
…faltou um stm.executeUpdate();
e se seu banco não for commit automatico um:
connection.commit();
[]´s
Muito grato pela ajuda, de tanto apagar, copiar e colar esqueci de recolocar o stm.execute();
mas precisa ser um excuteUpdate?
[quote=AndreMendes]Muito grato pela ajuda, de tanto apagar, copiar e colar esqueci de recolocar o stm.execute();
mas precisa ser um excuteUpdate?[/quote]
Tanto faz.
Eu geralmente uso os métodos de nome mais completo: executeUpdate() e executeQuery(). Assim o int com o número de registros ou o resultSet são retornados diretamente pelas funções.
O execute() exigiria que você usasse os método getResultSet() e getResultCount() adicionalmente.