Problema com PreparedStatement

[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.