IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

MySql - Requête "modifier"


Sujet :

Requêtes MySQL

  1. #1
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 17
    Par défaut MySql - Requête "modifier"
    Bonjour,

    J'ai créé un programme sous Eclipse, en Java, permettant de se connecter à une base de données Postgres et MySql. Sous Postgres, le programme est compilé parfaitement et n'a aucune erreur lors des tests. Sous MySql, j'ai juste une erreur, lorsque je désire insérer une commande, j'ai l'erreur suivante :

    Syntax error or access violation message from server : "You have an error in your SQL syntax;..."

    Je pense que cela est dû à cause de cette requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String update = "UPDATE tb_produits SET quantiteStock_produits = quantiteStock_produits - " + quantiteCommandee + "WHERE id_produits = " + produit;
    Il faut savoir que quand j'insère une commande, d'abord le programme vérifie la quantité en stock du produit sélectionné, ensuite il modifie la quantité en stock du produit et pour terminer il insère la commande du client.

    Depuis que j'ai rajouté le "WHERE id_produits = " + produit;, cette erreur apparaît, si j'enlève cette partie de code, alors tous mes produits sont modifiés et pas seulement le produit correspondant à l'identifiant repris.

    Sauriez-vous m'indiquer quelle est mon erreur ?

    Merci d'avance

  2. #2
    Membre Expert Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Par défaut
    Bonjour,

    Citation Envoyé par pado_83
    Sauriez-vous m'indiquer quelle est mon erreur ?
    Non, à moins que tu nous dises ce qui est indiqué après "You have an error in your SQL syntax" et que tu nous donnes la valeur de la chaine update (on peut pas deviner ce qu'il y a dans la variable produit)

  3. #3
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 17
    Par défaut
    Alors...

    Maximilian a écrit :
    ce qui est indiqué après "You have an error in your SQL syntax"
    Voici la totalité du message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    java.sql.SQLException: Syntax error or access violation message from server: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id_produits = 4' at line 1"
    	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2001)
    	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1168)
    	at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1279)
    	at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:1225)
    	at com.mysql.jdbc.Connection.execSQL(Connection.java:2278)
    	at com.mysql.jdbc.Connection.execSQL(Connection.java:2225)
    	at com.mysql.jdbc.Statement.execute(Statement.java:906)
    	at FileCommandeInsererFrame.inserer(FileCommandeInsererFrame.java:289)
    	at FileCommandeInsererPilote.jButtonInserer_actionPerformed(FileCommandeInsererPilote.java:103)*Action* Boutton 'Insérer' -> Insertion d'une commande
    Quantité commandée :
    Modification
     
    	at FileCommandeInsererPilote$1.actionPerformed(FileCommandeInsererPilote.java:53)
    	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    	at java.awt.Component.processMouseEvent(Unknown Source)
    	at javax.swing.JComponent.processMouseEvent(Unknown Source)
    	at java.awt.Component.processEvent(Unknown Source)
    	at java.awt.Container.processEvent(Unknown Source)
    	at java.awt.Component.dispatchEventImpl(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Window.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    Dans produit il y a un identifiant, un nom, un prix et une quantité stockée.

  4. #4
    Membre émérite
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Par défaut
    On dirait qu'il manque un espace avant le WHERE

  5. #5
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 17
    Par défaut
    Merci bcp Biglo.

    C'était effectivement un espace . C'est trop trop bête comme faute.

    Merci encore.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Insérer résultat d'une requête : problème de quote
    Par maxime17s dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/12/2008, 04h42
  2. [MySQL] Sauvegarder du texte (db mysql) CR, single-quote, double-quote, etc
    Par vandeyy dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/03/2007, 12h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo