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 :

UPDATE correct mais erreur SQL signalée


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 495
    Billets dans le blog
    1
    Par défaut UPDATE correct mais erreur SQL signalée
    Bonsoir,

    à priori, ma requête est correcte :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE `t_ap_application` 
        SET plat_ident = 1
        WHERE app_ident = 79

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    CREATE TABLE `t_ap_application` (
      `app_ident` int unsigned NOT NULL AUTO_INCREMENT,
      `app_name` varchar(100) DEFAULT NULL,
      `lic_ident` int unsigned DEFAULT NULL,
      `plat_ident` int unsigned DEFAULT NULL,
      PRIMARY KEY (`app_ident`),
      KEY `fk_ap_application_ibfk_1` (`lic_ident`),
      KEY `fk_ap_application_ibfk_2` (`plat_ident`),
      CONSTRAINT `fk_ap_application_ibfk_1` FOREIGN KEY (`lic_ident`) REFERENCES `t_li_license` (`lic_ident`),
      CONSTRAINT `fk_ap_application_ibfk_2` FOREIGN KEY (`plat_ident`) REFERENCES `t_pl_platform` (`plat_ident`)
    ) ENGINE=InnoDB AUTO_INCREMENT=786 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE TABLE `t_pl_platform` (
      `plat_ident` int unsigned NOT NULL AUTO_INCREMENT,
      `plat_platform` varchar(100) DEFAULT NULL,
      `plat_platformowner` int DEFAULT NULL,
      `plat_publisher` varchar(100) DEFAULT NULL,
      PRIMARY KEY (`plat_ident`)
    ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

    Et pourtant :
    Error Code: 1064. 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 't_ident = 1 WHERE app_ident = 79' at line 1
    Peut-on m'expliquer ?

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 640
    Billets dans le blog
    10
    Par défaut
    Bonjour

    Après avoir copié/collé le code dans db_fiddle, tout fonctionne correctement sous réserve
    • d'ajouter le DDL de création de la table t_li_license référencée par t_ap_application
    • d'inverser l'ordre de création des tables t_ap_application et t_pl_platform : la table référencée doit toujours être créée avant la table qui la référence
      donc t_pl_platform avant t_ap_application

  3. #3
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 495
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    même si dans mon post, j'ai mis le DDL de t_pl_platform après celui de t_ap_application, en réalité, j'ai bien fait l'inverse !

    Ca doit être une question de jour, car je viens de réessayer et ça a marché

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

Discussions similaires

  1. [O7] Update (simple) mais erreur ORA-01427
    Par akr54 dans le forum SQL
    Réponses: 5
    Dernier message: 23/02/2011, 19h34
  2. fonction correction, mais erreur compilation
    Par cashmoney dans le forum SQL
    Réponses: 15
    Dernier message: 22/01/2009, 15h53
  3. compilation correcte mais fenetre d'erreur
    Par alibas dans le forum Visual C++
    Réponses: 6
    Dernier message: 01/10/2006, 23h02
  4. [VB.Net] Pourquoi ai-je une Erreur SQL sur un update ?
    Par ndsaerith dans le forum Accès aux données
    Réponses: 3
    Dernier message: 03/08/2006, 11h32
  5. [MySQL] Requete SQL correcte Mais aucun affichage
    Par jenga dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 10/04/2006, 13h55

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