0

If I change

ps.setString(3, ((JTextField)txtDateRecv.getDateEditor().getUiComponent()).getText());

to

ps.setDate(3, ((JTextField)txtDateRecv.getDateEditor().getUiComponent()).getText()); then I get an error message showing in Netbeans IDE 7.2.1

mySQL database field has the column set to 'DATE'.

can someone help me understand where is the issue?

Thanks for the help. Part of the code is as follows;

private void btnSaveActionPerformed(java.awt.event.ActionEvent evt) {                                        
        // TODO add your handling code here:
        try{
            String sql="insert into inventory(DNO,TITLE,RDATE,COPIES) values(?,?,?,?)";
            ps=con.prepareStatement(sql);
            ps.setString(1, txtDvdNo.getText());
            ps.setString(2, txtMovTitle.getText());
            ps.setString(3, ((JTextField)txtDateRecv.getDateEditor().getUiComponent()).getText());
            ps.setString(4, txtCopies.getText());
            ps.execute();
            JOptionPane.showMessageDialog(txtCopies, "New Record added");
        }
        catch(SQLException e){
            JOptionPane.showMessageDialog(Inventory.this, e.getMessage());
        }
        showInventoryTable();
    }        

1 Answers1

0

Parse the textual representation of date in JTextField

   java.util.Date date = new SimpleDateFormat(your_date_format).parse(((JTextField)txtDateRecv.getDateEditor().getUiComponent()).getText());

then make a java.sql.Date of it and set it to PreparedStatement

   ps.setDate(3, new java.sql.Date(date.getTime())); 
Evgeniy Dorofeev
  • 133,369
  • 30
  • 199
  • 275