JAVA : Problème de requête

Salut à tous,

Voilà j'ai un problème avec une requête d'ajout , je sais il y a rien de compliqué mais là je sais pas pourquoi ca foire, en plus le message d'erreur est pas très précis...

mon code :

String ajout= "INSERT INTO Sortie (Ref,Marque,Categorie,Couleur,Description,Date,Service,Quantite) VALUES ("+"'"+refarticle+"','"+marquearticle+"','"+categoriearticle+"','"+couleurarticle+"','"+descriptionarticle+"','"+zonedate.getText()+"','"+choixservice.getSelectedItem()+"',"+zonequantite.getText()+");";

mon erreur :

erreur
[Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe dans l'instruction INSERT INTO.

D'avance merci

13 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Alors c'est que ca vient de tes pilotes ODBC ou alors du code quand tu execute ta requete, fais donc voir le reste du bout de code
    1. J'ai le meme probleme,
      Mon instruction marche sous access, mais a partir de java jai le message d'erreur :
      Erreur de syntaxe dans l'instruction INSERT INTO.

      Je ne comprends vraiment pas.
      Merci d'avance si qqun connait la reponse..........
      1. Contributeur
        eh bien par exemple si tu utilise MySQL, tu as la possibilité dans le module MyAdmin d'éxécuter des requetes sur ta base, requetes que tu écrit comme si tu était dans ton programme mais dans une zone de texte prévue à cet effet, tu éxécute et le reste est fait tout seul ! Le résultét, et donc les éventuelles erreurs sont affichées et là tu peux voir si ta requete est bonne ou non.

        jE NE SAIS PAS QUEL sgbd TU UTILISE mais s'il n'y as pas le même fonctionnalité qqpart c'est qu'il y a un pb !

        Bonne chance ++
        1. je ne vois pas très bien ce que tu veux dire ...
          tu peux m'expliquer un peu plus stp???
          1. Contributeur
            tu utilise access comme base de données. Et bien, tu ouvre ton fichier access et tu tape dans la fenêtre SQL
            Insert Into .....
            Comme ça peut être qu'ils te donneront plus de détail sur l'erreur!
        2. Contributeur
          Et est ce que tu as essayé de l'insérer directement dans l'interface de ton SGBD en mettant cette requête SQL? Ce sera plus facile pour savoir d'ou vient l'erreur
          1. Contributeur
            OUI ca sera plus simple pour savoir si la requete est bonne ou non !
        3. mon code :

          String ajout= "INSERT INTO Sortie (Ref,Marque,Categorie,Couleur,Description,Date,Service,Quantite) VALUES ('"+refarticle+"','"+marquearticle+"','"+categoriearticle+"','"+couleurarticle+"','"+descriptionarticle+"','"+zonedate.getText()+"','"+choixservice.getSelectedItem()+"',"+zonequantite.getText()+")";

          les colonnes de ma tables sont toutes au format Text sauf la derniere qui est en Numerique

          mon erreur :

          erreur
          [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe dans l'instruction INSERT INTO.
          1. Salut,

            les champs de ta table sont ils bien tous des varchar ? aucun int ou number ?
            le point-virgule est-il nécessaire ?
            1. Je viens d'essayer mais ca marche pas

              j'ai bien vérifier le nom des colonnes et des variables de mon formulaire mais rien à faire ca marche pas .....

              C'est bizaaaare cette histoire là
              1. Contributeur
                c toujours la meme erreur qu'il te met ?
            2. Contributeur
              essai un truc plutot genre comme ca :

              String ajout= "INSERT INTO Sortie (Ref,Marque,Categorie,Couleur,Description,Date,Service,Quantite) VALUES ("'"+refarticle+"','"+marquearticle+"','"+categoriearticle+"','"+couleurarticle+"','"+descriptionarticle+"','"+zonedate.getText()+"','"+choixservice.getSelectedItem()+"','"+zonequantite.getText()+"')";

              ++
              1. ca veut dir que j'insere dans la table sortie dans les colonnes (...,...,...,,...etc)
                1. bonjour,
                  ça correspond à quoi dans ton programme ça : "Sortie (Ref,Marque,Categorie,Couleur,Description,Date,Service,Quantite)" ?