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 entre 2 tables


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut UPDATE entre 2 tables
    Hello everybody,

    le code suivant ne retourne pas d'erreur de syntaxe et pourtant ma table notices nest pas remplie ?!?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE `notices` SET `CAMPAGNE_IM` = 'fiche_info.CAMPAGNE' WHERE `REF_NOTICES` = 'fiche_info.REF' ;
    una solucion ?

  2. #2
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut Re: UPDATE entre 2 tables
    Dans la doc MySQL, j'ai trouvé un commentaire utilisateur qui pourrait t'aider. (http://dev.mysql.com/doc/refman/5.1/en/update.html, commentaire par Babu Ramesh)

    Essaye ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    UPDATE notices
    LEFT JOIN fiche_info ON notices.REF_NOTICES=fiche_info.REF
     
    SET notices.CAMPAGNE_IM=fiche_info.CAMPAGNE
    Ensuite, il reste à savoir si tu as besoin d'un LEFT JOIN ou d'un INNER JOIN. (qu'est-ce que tu fais si il n'y a pas de correspondance dans la table fiche_info ? Avec un LEFT JOIN ça te met notices.CAMPAGNE_IM à NULL)
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut
    Ah ouais cest bien ca !
    et ca a marche en plus ;-)

    Mais maintenant jaimerais faire la meme chose sur tous les champs.
    Y a pas un parametre ALL ou un truc du genre ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut
    Non en fait ce que je voudrais faire cest un INSERT global, recopier la totalite des lignes des colonnes REF et CAMPAGNE de la table fiche_info dans les colonnes REF_FT et CAMPAGNE_FT de la table fiche_technique !

  5. #5
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut
    Citation Envoyé par dafalri
    Ah ouais cest bien ca !
    et ca a marche en plus ;-)
    Tant mieux alors !


    Citation Envoyé par dafalri
    Mais maintenant jaimerais faire la meme chose sur tous les champs.
    Y a pas un parametre ALL ou un truc du genre ?
    Oui, il y a bien un truc: ça s'appelle Ctrl+c, Ctrl+v

    Sinon, pourquoi une telle redondance d'informations dans ta base ? La flegme de faire une jointure dans tes SELECT ou y'a-t-il un véritable intérêt ?
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  6. #6
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut
    Citation Envoyé par dafalri
    Non en fait ce que je voudrais faire cest un INSERT global, recopier la totalite des lignes des colonnes REF et CAMPAGNE de la table fiche_info dans les colonnes REF_FT et CAMPAGNE_FT de la table fiche_technique !
    Je renouvelle ma question: pourquoi une telle redondance d'informations?
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut
    Non ce sont des champs que jai rajoute bien apres ... et donc ils y a une tonne denregistrements ... sil faut que je les fasse un par un je suis pas couche !

  8. #8
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut
    Citation Envoyé par dafalri
    Non ce sont des champs que jai rajoute bien apres ... et donc ils y a une tonne denregistrements ... sil faut que je les fasse un par un je suis pas couche !
    Ok, je vois: tu as modifié la structure de ta table et maintenant tu veux récupérer les infos de l'ancien modèle pour les mettre dans le nouveau modèle. Après, tu détruiras les infos de l'ancien modèle.

    Ce n'est donc pas de la redondance et c'est donc parfaitement justifié.

    Sinon, pour répondre à ta question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    UPDATE fiche_technique
    LEFT JOIN fiche_info ON <CONDITION_JOINTURE>
     
    SET fiche_technique.REF_FT=fiche_info.REF,
    fiche_technique.CAMPAGNE_FT=fiche_info.CAMPAGNE
    Maintenant, faudrait éviter de m'embrouiller en changeant tes notices en fiche_technique comme par magie (sinon je te jette un sort de "dissipation de la magie" et j'appelle mon copain Xzarvax, nécromancien niveau 27, spécialité "animation des morts", tu vas avoir mal aux fesses ! )
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut
    Et non parce que maintenant que jai fait la table 'notices' il faut que je moccupe de la table 'fiche_technique' ... cest la le hic !

    1/ La table 'notices' etait deja remplie, jy ai juste rajoute un champs CAMPAGNE_NOTICES.

    2/ la table 'fiche_technique' a ete rajoute apres, et il faut que je la remplisse donc pas un UPDATE mais un INSERT

    je sais pas si tu suis la ?

    Veux tu un sort de Réfection cranienne ? ;-)

  10. #10
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut
    Citation Envoyé par dafalri
    2/ la table 'fiche_technique' a ete rajoute apres, et il faut que je la remplisse donc pas un UPDATE mais un INSERT
    Oh là là, faut te suivre...

    Ce que tu veux faire, maintenant, c'est un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    INSERT INTO fiche_technique (REF_FT, CAMPAGNE_FT)
     
    SELECT REF, CAMPAGNE
    FROM fiche_info
    C'est ça?

    Citation Envoyé par dafalri
    Veux tu un sort de Réfection cranienne ? ;-)
    Non merci, ton sort de "je t'embrouille à changer de problème comme ça, sans prévenir" m'a infligé suffisamment de dégats. Si ça continue je vais prendre la fuite et te laisser tout seul (apès avoir lancé sur toi un sort de "chute de nécropole", bien sûr )
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut
    oh lala comme tu y vas ! le palfrenier niveau 3 qui se prend pour un paladin niveau 34 ! ;-)

    en tout cas chapeau bas monsieur !

    je pensais pas que cetait aussi simple ... mais jai un esprit un peu complique parfois !

    Merci

  12. #12
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par défaut
    Citation Envoyé par dafalri
    oh lala comme tu y vas ! le palfrenier niveau 3 qui se prend pour un paladin niveau 34 ! ;-)
    Oups, cet affront mérite bien une chute de nécropole:

    Chute de nécropole: sort réservé au Maître de Jeu

    Une nécropole tombe sur la tête du joueur récalcitrant, le tuant sur le coup. La nécropole est remplie de trésors que les autres joueurs s'empressent alors de ramasser... (sort aussi connu sous le nom "Humiliation de l'au-delà")
    "Tu veux bien me passer ta fiche de perso, stp? Merci" (le MJ la déchire en deux, en disant "Ca y est, t'es mort !"


    Au fait, on t'as pas dit, mais le type qui se fait passer pour un palfrenier niveau 3 et qui vous accompagne depuis le début de l'aventure est en fait un puissant sorcier d'alignement chaotique mauvais et accessoirement le boss que vous recherchez depuis le début. ah ah ah ah gniarf gniarf gniarf gniarf (la voix devient de plus en plus caverneuse)

    Plus sérieusement maintenant:

    Citation Envoyé par dafalri
    en tout cas chapeau bas monsieur !

    Merci
    Et ben de rien, ça fait plaisir de rendre service !
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 182
    Par défaut
    Damned je me suis encore fais avoir ... je savais que jaurais pas du prendre nabot jardinier ... on mavait pourtant dit que cetait la classe la plus puissante ...
    pas grave je reessaierais en pot de chambre coulissant et la ma vengance sera terrible .... AHAHAHAHAHAHAHAHAHHA aahahahha AArRRRGGHHH !!! nnoooonn pas maintenant ........................

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/11/2007, 18h08
  2. Syntaxe Update entre deux tables
    Par lenoil dans le forum SQL
    Réponses: 5
    Dernier message: 02/10/2007, 16h12
  3. Update entre une table et une vue
    Par Tintou dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 28/09/2007, 21h35
  4. update entre 2 tables
    Par alexkickstand dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 22/05/2007, 17h52
  5. Update entre 2 tables
    Par jfox dans le forum SQL
    Réponses: 8
    Dernier message: 04/11/2003, 10h22

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