|
|
Bonjour,
Je suis en train de commencer un Web service et j'ai 2 requetes à faire dans une fonction.
En gros, avec un string, on recupère l'identifiant de ce string dans une de mes tables et a l'aide de cet identifiant, je fais une deuxieme requete.
Le type de mes identifiant dans mes tables sont des bigint(12) unsigned.
J'arrive bien a récupérer les identifiant à l'aide de la 1ere requete, mais la 2eme ne se fait pas avec le message suivant: "requete invalide".
Alors voila ce bout de code qui me pose problème:
try {
Statement stmt = con.createStatement();
Statement stmt1 = con.createStatement();
String requete = "SELECT * FROM commande WHERE Magasin_ID = "+ClientID;
System.out.println(requete);
resultat = stmt.executeQuery(requete);
while(resultat.next())
{
System.out.println(resultat.getInt("Materiel_ID"));
// ici ca affice bien la variable
// avec cette ligne, la 2eme requete se fait bien
int MaterielID= (int) Double.parseDouble (resultat.getString("Materiel_ID"));
// si jamais, je met ceci
//int MaterielID=resultat.getInt("Materiel_ID"); ma requete ne se fait pas
//
String requete2= "SELECT Limite_Commande FROM materiel WHERE Materiel_ID="+MaterielID;
//suite du code non utile
Peut etre que java ne connais pas les bigint et les encode en string mais
dans une autre fonction, j'ai ceci :
public int getClientID (String Name) {
try {
Statement stmt = con.createStatement();
String requete = "SELECT Client_ID FROM client WHERE Name = '"+Name+"';";
//System.out.println(requete);
resultat = stmt.executeQuery(requete);
resultat.next();
return resultat.getInt("Client_ID");
}
Et tout se passe bien.
Pouvez vous m'éclairer un peu s'il vous plait?
Merci
|