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

MS SQL Server Discussion :

Mnémonique dans une variable ?


Sujet :

MS SQL Server

  1. #1
    psk
    psk est déconnecté
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Mnémonique dans une variable ?
    Bonjour,

    A des fins de clarté, je voudrais essayer le code d'une procedure stockée. Cette derniere, que nous appellerons UpdateFoo fait actuellement ceci :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    ALTER PROCEDURE UpdateFoo
    (
       @Action
    )
    AS BEGIN
       IF @Action = 'I'
       BEGIN
           INSERT blah blah
       END
       ELSE IF @Action = 'U'
       BEGIN
           UPDATE blah blah 2
       END
    END
    Sachant que "blah blah" et "blah blah 2" sont très proches, j'aimerais faire quelque chose du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    IF @Action = 'U'
       @Mnemo = INSERT
    else
       @Mnemo = UPDATE
     
    @Meno blah blah

    Mon exemple n'est pas forcement bon, mais le principe reste, et je ne sais pas si c'est possible (oui, j'ai fais pas mal de C).

    D'avance merci.

  2. #2
    psk
    psk est déconnecté
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Une piste possible
    Je viens de trouver une piste possible, totalement par hasard (je ne savais pas comment rechercher en fait) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    SET @Params = ' Blah Blah'
     
    IF @ACtion = 'U'
       SET @Cmd = 'UPDATE'
    ELSE
       SET @Cmd = 'INSERT'
     
    SET @Cmd = @Cmd + @Params
     
    EXEC @Cmd

    Voilà en gros ce que cela pourrait donner

    Reste à adapter blah blah pour que ce soit compatible avec les deux, peut être en le complétant aussi dans le IF.

    Si vous avez des commentaires ou d'autres solutions c'est avec plaisir que je les lirais...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    356
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 356
    Points : 406
    Points
    406
    Par défaut
    Le seul problème est que les commandes "INSERT" et "UPDATE" n'ont pas le même mode de fonctionnement. Donc on ne peut pas généraliser les choses.

  4. #4
    psk
    psk est déconnecté
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Tout a fait, cependant, c'était juste sur le principe, et ensuite, blah blah peut être adapté/segmenté et l'on peut toujours trouver une partie commune surtout sur des tables avec de nombreuses colonnes.

Discussions similaires

  1. Stocker un noeud dans une variable
    Par Devotion dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 23/09/2004, 18h02
  2. [Sybase] résultat d'un select dans une variable
    Par stoz dans le forum Sybase
    Réponses: 2
    Dernier message: 14/09/2004, 15h28
  3. Résultat d'une requête dans une variable...
    Par Hoegaarden dans le forum Bases de données
    Réponses: 6
    Dernier message: 28/04/2004, 14h51
  4. Réponses: 6
    Dernier message: 24/07/2003, 13h39
  5. [langage] Extraire un block dans une variable multiligne
    Par |DUCATI| DesMo dans le forum Langage
    Réponses: 9
    Dernier message: 11/02/2003, 15h56

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