Probleme d'acces à la DB

Résolu
cs_StefDB Messages postés 8 Date d'inscription mardi 28 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004 - 28 sept. 2004 à 14:36
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 - 29 sept. 2004 à 16:41
Bonjour,
Lorsque j'essaie de compiler mon programme, j'ai les erreures suivantes qui se lèvent.....
//java.sql.SQLException: [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe (opérateur absent) dans l'expression '1st'.
//java.sql.SQLException: [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe (opérateur absent)

try {
strDay = (String) (MainMenu.billOne.lstDay.getSelectedValue());

strActivity = MainMenu.billOne.txtActivity.getText();

strBillingDate = MainMenu.bill.txtBillingDate.getText();

strTimeBilling = MainMenu.bill.txtTimeBilling.getText();
strMilesCat = MainMenu.bill.txtMilesCat.getText();

MainMenu.main.staQuery.executeUpdate("INSERT INTO tblBill (NoClient, BillingDate, TimeBilling, Day, TimeSpent, MilesNumber, MilesCat, Activity) VALUES(" +
MainMenu.billOne.strSelectClient +
",'" +
MainMenu.bill.strBillingDate +
"','" +
MainMenu.bill.txtTimeBilling +
"'," + MainMenu.bill.strDay +
"," + MainMenu.bill.strHours +
"," + MainMenu.bill.strMiles +
"," +
MainMenu.bill.strMilesCat +
",'" +
MainMenu.bill.strActivity + "')");
}
catch (Exception sqe) {
sqe.printStackTrace();
}
}
});
Apparemment ce serait un problème avec mes listes, mais je ne comprends pas car ça marchait dans une autre classe.
(J'utilise Access).
Merci d'avance à qui pourra me décoincer un peu.

Stef DB

5 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
29 sept. 2004 à 16:41
ou tu leur donnes une valeur par défaut
3
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
28 sept. 2004 à 17:02
Salut,

c'est un pb d'exécution et non de compilation.
Tu dois avoir une erreur dans ta requête SQL. Vérifie que tu n'as pas oublié les apostrophes pour les chaines de caractères
0
cs_StefDB Messages postés 8 Date d'inscription mardi 28 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004
29 sept. 2004 à 08:42
Oui, effectivement après quelques test hier, il s'est avéré que tu aies raison, et que c'est un problème de requête SQL.
En fait ça vient de mes liste (getSelectedValue()), parce que je vais chercher une valeur qui est de type Texte(champs 2) et essaie d'afficher la valeur correspondante en numérique(champs 1). Alors je crois que je dois d'abord aller chercher le bon champs.
Vais essayer. Merci

Stef DB
0
cs_StefDB Messages postés 8 Date d'inscription mardi 28 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004
29 sept. 2004 à 16:04
try {
strDay = (String) (MainMenu.billOne.lstDay.getSelectedValue());
strActivity = MainMenu.billOne.txtActivity.getText();
strBillingDate = MainMenu.bill.txtBillingDate.getText();
strTimeBilling = MainMenu.bill.txtTimeBilling.getText();
strMilesCat = MainMenu.bill.txtMilesCat.getText();

rstClientBill = MainMenu.main.staQuery.executeQuery("SELECT NoClient,ClientName FROM tblClient WHERE ClientName='" +
MainMenu.billOne.strSelectClient + "';");

rstClientBill.next();
String strSelectClientBill = rstClientBill.getString("NoClient");

MainMenu.main.staQuery.executeUpdate("INSERT INTO tblBill (NoClient, BillingDate, TimeBilling, Day, TimeSpent, MilesNumber, MilesCat, Activity) VALUES(" +
strSelectClientBill +
",'" +
MainMenu.bill.strBillingDate +
"','" +
MainMenu.bill.strTimeBilling +
"','" + MainMenu.bill.strDay +
"'," + MainMenu.bill.strHours +
"," + MainMenu.bill.strMiles +
"," +
MainMenu.bill.strMilesCat +
",'" +
MainMenu.bill.strActivity + "')");

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

[blue]Le premier problème a été corrigé. Ca marche mais maintenant mon problème est que si je ne saisi pas toutes les données des champs de mon INSERT INTO, ça me donne une erreure. Or il y a des champs qui sont optionnel, que l'utilisateur n'est pas obligé de remplir[blue]. PLEASE HELP !!!!!!
Merci

Stef DB
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
29 sept. 2004 à 16:40
je vois pas où est le problème. Si des valeurs ne sont pas présentes, tu ne les mets pas dans la requête SQL. Il suffit de tester si elles ont nulles ou vides
0
Rejoignez-nous