2 pièce(s) jointe(s)
Enregistrer les valeurs d'une JTable dans une base de données
Bonjour,
J'ai une JTable qui contient 3 colonnes et 9 lignes, lorsque j'insère des chiffres dans la quantités, ce dernier se multiplie avec les valeurs de la 1ère colonne et puis j'ai le résultat dans la colonne total.
Dans ma base de données j'ai 4 colonnes date date not null primary key, description int, qutité et total. Mais malheuresuement lorsuqe j'enregistre j'ai un message d'erreur : Pièce jointe 192882
Mon tableau:
Pièce jointe 192883
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| enregistrer.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try
{
Class.forName("com.mysql.jdbc.Driver");
System.out.println("com.mysql.jdbc.Driver found");
connexion=DriverManager.getConnection("jdbc:mysql://localhost:3306/khat","root","1234");
System.out.println("Connexion Ok");
PreparedStatement pstmt=connexion.prepareStatement("INSERT INTO ARRIVAGE(Date,Table) VALUES('" + ((JTextField)date.getDateEditor().getUiComponent()).getText() + "',?,?,?)");
for (int i = 0; i < model.getRowCount(); i++) {
for (int j = 0; j < model.getColumnCount(); j++) {
int o = ((Integer) model.getValueAt(i, j));
System.out.println("object from table is : " +o);
pstmt.setInt(j+1, (int)o);
}
pstmt.executeUpdate();
pstmt.clearParameters();
JOptionPane.showMessageDialog(null,"Added");
}
}catch (Exception insertException)
{System.out.println("Error:"+insertException.getMessage());
JOptionPane.showMessageDialog(null,insertException);
System.out.println("Error:"+insertException.getMessage());
}
}
}); |