kawtar_ch
Messages postés41Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention17 juillet 2008
-
2 août 2007 à 18:19
amundain
Messages postés110Date d'inscriptionmercredi 28 mars 2007StatutMembreDernière intervention28 août 2012
-
9 août 2007 à 12:23
Bonjour!!
j'ai une jTable qui recupere les données via une base de données access
je voudrais pouvoir modifier des lignes de ma jTable, j'ai réussi a le faire en rendant ediatables les cellules, le probleme c'est que je voudrais faire la mise a jour dans ma base de données, je pense que je devrais changer quelque chose dans la methode SetValueAt définie comme suit:
public void setValueAt(Object value, int row, int column) {
// On met à jour la JTable
try {
String tableName = metaData.getTableName(column+1);
// Some of the drivers seem buggy, tableName should not be null.
if (tableName == null) {
System.out.println("Table name returned null.");
}
String columnName = getColumnName(column);
String query =
"update "+tableName+
" set "+columnName+" = "+dbRepresentation(column, value)+
" where ";
// We don't have a model of the schema so we don't know the
// primary keys or which columns to lock on. To demonstrate
// that editing is possible, we'll just lock on everything.
for(int col = 0; col<getColumnCount(); col++) {
String colName = getColumnName(col);
if (colName.equals("")) {
continue;
}
if (col != 0) {
query = query + " and ";
} query query + colName +" "+
dbRepresentation(col, getValueAt(row, col));
}
System.out.println(query);
System.out.println("Not sending update to database");
statement.executeQuery(query);
}
catch (SQLException e) {
// e.printStackTrace();
System.err.println("Update failed");
}
Vector dataRow = (Vector)rows.elementAt(row);
dataRow.setElementAt(value, column);
}
je suis débutante en java et je ne sais pas ce que je pourrais faire comme modification pour que ça marche
pourriez -vous m'aider?
Merci d'avance