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 avec CASE


Sujet :

SQL Oracle

  1. #1
    Membre actif
    Homme Profil pro
    Chef de produit
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Chef de produit

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Points : 246
    Points
    246
    Par défaut UPDATE avec CASE
    Bonjour à tous,
    je voulais faire un Update sur ma base, avec la requete suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    UPDATE matable SET DEPARTEMENT=  
    CASE DEPARTEMENT
    	WHEN DEPCOM='23443'  THEN DEPARTEMENT=3 * EFFECTIF_SALARIE_2
    END;
    il ya message d'erreur qui apparait
    ORA-00905: missing keyword

    et je vois pas vraiment d'erreur dans ma requete!!???

    merci de votre aide.

  2. #2
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    La syntaxe du CASE n'est pas bonne, une petite recherche google
    http://www.adp-gmbh.ch/ora/sql/case_when.html

    Pour être sur, essaye d'abord avec un select et ensuite tu passeras l'update.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  3. #3
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    UPDATE matable 
    SET DEPARTEMENT=  
       CASE WHEN DEPCOM='23443'
          THEN 3 * EFFECTIF_SALARIE_2
       END;
    Ne chercherais-tu pas à faire plutôt ceci ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE matable 
    SET DEPARTEMENT=  3 * EFFECTIF_SALARIE_2
    WHERE DEPCOM='23443';

  4. #4
    Membre actif
    Homme Profil pro
    Chef de produit
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Chef de produit

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Points : 246
    Points
    246
    Par défaut
    merci de vos réponses
    oui effectivement c'est pas le bon syntaxe de case.

    merci "Jerome_Mtl" je prend la premières proposition parce que j'ai plusieurs cas dans le case.

    Merci à tous

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

Discussions similaires

  1. Update avec Case
    Par vad67 dans le forum DB2
    Réponses: 2
    Dernier message: 07/12/2010, 21h26
  2. [MySQL] Update avec case à cocher
    Par Vetchostar dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 01/11/2008, 14h28
  3. Update avec Case
    Par tornade69 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 21/01/2008, 01h15
  4. update avec Case et PL/SQL
    Par -Mapk- dans le forum PL/SQL
    Réponses: 6
    Dernier message: 12/10/2007, 16h32
  5. [SQL Server 2000]Update avec case
    Par nox75 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 07/10/2007, 20h18

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