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

Langage SQL Discussion :

Requete update


Sujet :

Langage SQL

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2002
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Requete update
    Bonjour à tous je voudrai faire une requête de mise à jour et j'ai un message d'erreur quelqu'un pourrait-il me dire quel est l'erreur ?
    MERCI BEAUCOUP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    update    
    Document LEFT JOIN Type ON Type.TypeID=Document.DocTypeID 
    LEFT JOIN Serie ON Serie.SerID=Document.DocSerID 
    LEFT JOIN Editeur ON Editeur.EditeurID=Document.DocEditeurID 
    LEFT JOIN Collection On Collection.ColID=Document.DocColID 
    LEFT JOIN Document_Auteur ON Document.DocumentID = Document_Auteur.DADocumentID 
    LEFT JOIN Auteur ON Auteur.AuteurID = Document_Auteur.DAAuteurID  set Document.DocTitre = 'Histoire des Terres'
    WHERE Document.DocumentID = '61'
    Morsi

  2. #2
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 109
    Points : 111
    Points
    111
    Par défaut
    bonjour,

    quel est ton message d'erreur et ton SGBD, merci...
    pense aussi à la balise CODE !

    et pouquoi faire des jointure multiple pour juste modifier la Table Document ???
    pourquoi ne pas simplement faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    update 
    Document 
    Set Document.DocTitre = 'Histoire des Terres' 
    WHERE Document.DocumentID = '61'
    ça me semble plus logique...

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2002
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Merci encore de ta réponse
    Mais j'ai besoin de faire des jointure car ceci est simplement un exemple
    je dois aussi mettre la table auteur
    Quelqu'un a-t-il une idée ?
    peut-on faire une mise à jour lorsque les tables sont jointes ?

  4. #4
    Membre émérite Avatar de vttman
    Homme Profil pro
    Développeur "couteau mosellan"
    Inscrit en
    Décembre 2002
    Messages
    1 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur "couteau mosellan"
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 140
    Points : 2 286
    Points
    2 286
    Par défaut
    Citation Envoyé par buffyann
    bonjour,

    quel est ton message d'erreur et ton SGBD, merci...pense aussi à la balise CODE !

    et pouquoi faire des jointure multiple pour juste modifier la Table Document ???
    pourquoi ne pas simplement faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    update 
    Document 
    Set Document.DocTitre = 'Histoire des Terres' 
    WHERE Document.DocumentID = '61'
    ça me semble plus logique...

  5. #5
    Candidat au Club
    Inscrit en
    Avril 2002
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Requete update
    Je ne veux pas simplement mettre à jour la table document il y aura d'autres table je vous ai mis un exemple mais même comme cela j'ai une erreur
    voici le message d'erreur
    MySQL a répondu: Something is wrong in your syntax près de 'LEFT JOIN Type ON Type.TypeID=Document.DocTypeID LEFT JOIN Ser' à la ligne 3

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 849
    Points : 52 975
    Points
    52 975
    Billets dans le blog
    6
    Par défaut
    On ne peut pas mettre à jour plusieurs tables à la foi.

    Une jointure dans un ordre UPDATE, n'est là que pour mettre en relation les données de la table à mettre à jour avec la valeur d'une colonne d'une autre table.

    Que veut tu faire exactement ???

    A +

  7. #7
    Candidat au Club
    Inscrit en
    Avril 2002
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Requete update
    Bonjour et merci de m'avoir répondu
    Donc on ne peut pas mettre à jour plusieurs tables!!!
    Voilà ce que je veux faire exactement j'ai un formulaire Document qui contient plusieurs informations provenant de plusieurs tables et qui doit-être mis à jour
    par exemple le nom de l'auteur qui provient de la table auteur la table Serie etc..
    comment puis-je faire si je ne peux pas mettre à jour plusieur tables

    voici ma requête de départ qui permet d'afficher tous mon document
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT Editeur.EdiNom,Document.DocumentID, Document_Auteur.DAAuteurID, Auteur.AutNomPrenom, Type.TypDocument, Document.DocNoSerie,Serie.SerNomSerie, Collection.ColNomCollection, Document.DocumentID, Document.DocDeterminantTitre, Document.DocTitre, Document.DocMentionEdition, Document.DocEditeurID, Document.DocAnneeEdition, Document.DocSerID, Document.DocNoSerie, Document.DocColID, Document.DocNoCollection, Document.DocNotes, Document.DocISBN, Document.DocSource, Document.DocTypeID, Document.DocNotesGenerales, Document.DocNoChariot, Document.DocNotePrix, Document.DocSaisi, Document.DocDate, Document.DocNoteFacture, Document.DocNoteAuteur
    FROM Document LEFT JOIN Type ON Type.TypeID=Document.DocTypeID 
    LEFT JOIN Serie ON Serie.SerID=Document.DocSerID 
    LEFT JOIN Editeur ON Editeur.EditeurID=Document.DocEditeurID 
    LEFT JOIN Collection On Collection.ColID=Document.DocColID 
    LEFT JOIN Document_Auteur ON Document.DocumentID = Document_Auteur.DADocumentID 
    LEFT JOIN Auteur ON Auteur.AuteurID = Document_Auteur.DAAuteurID  WHERE Document.DocumentID = '$id'	
    	")
    Pour tester j'ai fais cette requete et cela marche très bien mais je dois mettre à jour aussi la table auteur qui est en relation avec la table document meme chose pour les autres tables
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    update Document 
    set Document.DocTitre = 'histoire de la terrre' 
    WHERE Document.DocumentID = '61'

  8. #8
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 109
    Points : 111
    Points
    111
    Par défaut
    tu peux mettre à jour plusieurs tables mais en plusieurs requetes...
    1 pour le document, 1 pour le type, 1 pour l'auteur etc...
    Normalement, tu es censé avoir toutes les informations nécessaires dans ton formulaire pour effectuer les update.

    exemple :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    update Document 
    set Document.DocTitre = 'histoire de la terrre' 
    WHERE Document.DocumentID = '61'
    puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    update Editeur 
    set EdiNom = 'Valeur du Formulaire' 
    WHERE DADocumentID = '61'
    etc...

    j'ai l'impression qu'il te manque certaines bases de SQL, peux être devrait tu lire quelques tutoriels sur le sujet...

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

Discussions similaires

  1. Utilisation d'une requete dans une requete update
    Par hellbilly dans le forum Access
    Réponses: 4
    Dernier message: 09/01/2005, 15h09
  2. Requete UPDATE !!!
    Par fages dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 01/07/2004, 16h52
  3. [SYBASE] optimisation requete UPDATE
    Par metheorn dans le forum Sybase
    Réponses: 8
    Dernier message: 24/05/2004, 17h01
  4. [version] Requete Update avec différentes versions de mySQL
    Par regbegpower dans le forum Requêtes
    Réponses: 2
    Dernier message: 26/01/2004, 17h19
  5. [debutante] erreur requete update
    Par LineLe dans le forum ASP
    Réponses: 5
    Dernier message: 12/09/2003, 13h05

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