Requete SQL sous Excel depuis JAVA

Taranael Messages postés 54 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 21 juin 2007 - 20 avril 2006 à 14:50
Taranael Messages postés 54 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 21 juin 2007 - 20 avril 2006 à 22:40
Bonjour tous.
J'ai cherché un peu dans le forum et dans les codes sources mais j'ai pas trouvé quand chose qui m'aide alors voilà le problème :
J'ai un JTable dans lequel je place le contenu d'un JDBCAdapter qui s'est rempli dans une base de donnée Access.
Jusque là pas de problème le JTable s'affiche bien comme il faut et tout , mais maintenant je voudrais pouvoir sauvegarder ce JTable dans un fichier Excel (ne me dites pas si c'est utile ou pas c'est le patron qui demande).
J'ai trouvé un bout de code pas mal buggué et en Anglais qui après quelques rectifications donne ça :

try {
String excelFileName="myTable.xls";
String sqlInsert;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String excelDatabase= "jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DBQ=";
excelDatabase+= excelFileName.trim() + ";DriverID=278;READONLY=false}";
Connection excelCon = DriverManager.getConnection(excelDatabase,"","");
if(!excelCon.isClosed())
System.out.println("Successfully Connected To Excel !!");
Statement excelStat;
excelStat=excelCon.createStatement();
int rowI,colI;
for(rowI=0;rowI<table.getRowCount();rowI++)
{
sqlInsert= "Insert into `myTable$` values(";
for (colI=0;colI<table.getColumnCount();colI++){
if ( colI < table.getColumnCount()-1 )
sqlInsert +="'"+ table.getValueAt(rowI,colI) + "',";
else
sqlInsert +="'"+ table.getValueAt(rowI,colI) + "')";
}
System.out.println(sqlInsert);
excelStat.executeUpdate(sqlInsert);
}

} catch (Exception xls) { xls.printStackTrace();
}

Voilà l'exception que je prends dans les dents :

Requete :
Insert into 'myTable$' values ('xxx','xxx',...)
java.sql.SQLException [Microsoft][Pilote ODBC Excel] Le nombre de valeurs de la requête doit coïncider avec le nombre de champs destination.

... J'ai fait différentes tentatives mais je n'avance plus ... si quelqu'un a une idée je suis ouvert à toute proposition !

L'ordinateur fait toujours ce qu'on lui demande !
Le problème c'est qu'il ne comprend pas ce qu'on lui demande ...

1 réponse

Taranael Messages postés 54 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 21 juin 2007 1
20 avril 2006 à 22:40
Vous dérangez plus ... enfin si quelqu'un a réagit ...
J'ai trouvé solution à mon problème et je vais bientôt poster une source pour d'autres qui auraient besoin.

L'ordinateur fait toujours ce qu'on lui demande !
Le problème c'est qu'il ne comprend pas ce qu'on lui demande ...
0
Rejoignez-nous