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

SQL Oracle Discussion :

Update plusieur champs


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    OCTAL - ORACLE
    Inscrit en
    Février 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : OCTAL - ORACLE
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2008
    Messages : 25
    Par défaut Update plusieur champs
    Bonjour,
    j'ai un problème pour faire une update de plusieurs champs à partir d'une autre table, j'ai testé ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    update article
    set arti_designation =  ARTI_DESIGNATION_J,
    ARTI_ARTY_CODE  = arti_type_j
    from  article_jms, article
    where arti_code_j = arti_code
    il ignore la mot clè from, malgré il est acceptable par SQL server,

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Essayez ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    update article art
       set (art.arti_designation, art.arti_arty_code) =
                  (select arj.arti_designation_j, arj.arti_type_j
                     from article_jms arj
                    where arj.arti_code_j = art.arti_code)
     where exists (select null
                     from article_jms arj
                    where arj.arti_code_j = art.arti_code);
    Ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    merge into article art
    using article_jms arj
       on (arj.arti_code_j = art.arti_code)
     when matched update
      set art.arti_designation = arj.arti_designation_j,
          art.arti_code        = arj.arti_type_j;

  3. #3
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    update (
            select  article.arti_designation,  article_jms.ARTI_DESIGNATION_J as new_arti_designation 
                    article.ARTI_ARTY_CODE  = article_jms.arti_type_j as new_ARTI_ARTY_CODE
              from  article_jms, article
             where arti_code_j = arti_code
    )
    set arti_designation = new_arti_designation,
        ARTI_ARTY_CODE   = new_ARTI_ARTY_CODE
    /
    Bon, il faut aussi croiser ses doigts avant, mais ...

  4. #4
    Membre averti
    Homme Profil pro
    OCTAL - ORACLE
    Inscrit en
    Février 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : OCTAL - ORACLE
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2008
    Messages : 25
    Par défaut
    Merci pour les réponses,ça marché;
    Bon, il faut aussi croiser ses doigts avant, mais ...
    j'ai essayé plusieurs fois avec mes connaissances de base, mais toujours j'ai des msg d'erreur "impossible de faire mise à jour avec null" et ........

  5. #5
    Membre expérimenté Avatar de mongilotti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2003
    Messages : 314
    Par défaut
    merci de marquer ce sujet comme résolu.

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Citation Envoyé par mongilotti Voir le message
    merci de marquer ce sujet comme résolu.
    Les prochains messages de ce genre, je les signale comme étant du spam.

  7. #7
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Citation Envoyé par fahmi.benrejab Voir le message
    Merci pour les réponses,ça marché;
    Bon, il faut aussi croiser ses doigts avant, mais ...
    j'ai essayé plusieurs fois avec mes connaissances de base, mais toujours j'ai des msg d'erreur "impossible de faire mise à jour avec null" et ........
    C'est pas ça. La syntaxe que j'ai vous donné fonctionne si votre table est key -preserved

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

Discussions similaires

  1. Update plusieurs champs
    Par Marcoff dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/04/2009, 17h25
  2. Update plusieurs Champs de Table avec un Record
    Par argoet dans le forum PL/SQL
    Réponses: 8
    Dernier message: 02/04/2009, 14h33
  3. UPDATE plusieurs champs
    Par wajdopovitch dans le forum SQL
    Réponses: 3
    Dernier message: 11/02/2009, 15h07
  4. [MySQL] Update plusieurs champs input
    Par xender dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/02/2007, 16h10
  5. Update de plusieurs champs
    Par nicoaix dans le forum Access
    Réponses: 6
    Dernier message: 24/02/2006, 11h26

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