problème d'insertion dans une base de données
Bonjour,
j'ai créé une BD access (avec access 2002) nommée test.mdb contenant une seule table "MATABLE" avec 3 champs: NOM, PRENOM et SURNOM.
lorsque je consulte son contenu à partir de mon programme java (SELECT * FROM MATABLE) ça fonctionne parfaitement. mais quand j'essaie d'insérer ou de supprimer des enregistrements, ça ne fonctionne pas.
voici le code que j'utilise:
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
| import java.sql.*;
public class Ajout{
public static void main(String[] arguments){
String data = "jdbc:odbc:MATABLE";
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(data);
Statement st = conn.createStatement();
// ajout d'un enregistrement
String query = "insert into MATABLE values ('MOI','TOI','LUI')";
int result = st.executeUpdate(query);
System.out.println("MAJ effectuée"+result);
st.close();
}catch(SQLException se){
System.out.println("SQL Error: "+se.toString()+ " "
+se.getErrorCode()+" "+se.getSQLState());
}catch(Exception e){
System.out.println("Error: "+e.toString()
+e.getMessage());
}
}
} |
la variable result renvoie la valeur 1 mais la BD n'est pas modifiée !!
le fichier access est associé (via l'administrateur de source de données ODBC) à un driver "Microsoft Access Driver (*.mdb)".
est-ce qu'il y a une manipulation spéciale à faire sur le fichier access pour que les mises à jour soient prises en compte ?
est-ce que quelqu'un peut m'aider SVP ? :( merci :D
Tidjani.