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

Développement SQL Server Discussion :

Requete dynamique - utilisation de variables


Sujet :

Développement SQL Server

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2006
    Messages : 61
    Par défaut Requete dynamique - utilisation de variables
    Bonjour,

    Dans une procédure stockée j'ai besoin de créer une requête à l'aide de plusieurs éléments.

    ex. :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    DECLARE @myVAR VACHAR(50), @Requete VARCHAR(500)
     
    SET @Requete = 'SELECT ...
    CASE WHEN @myVAR=''good'' THEN
       T.C2
    ELSE
       T.C3
    END
    ... FROM T WHERE ....'
     
    EXEC (@Requete)
    Si j'exécute cette requete en récupérant le contenu de ma variable (@Requete) cela fonctionne, la requête est donc correctement formée. Mais lorsque j'utilise EXEC j'ai le message:
    "La variable myVAR doit être déclarée"

    J'ai l'impression (après quelques recherches en plus) que ma requête ne s'exécute pas dans mon environnement et donc ne connait pas ma variable. Si oui, comment m'en sortir ?

    Merci pour votre aide.

  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
    Il faut concaténer votre variable à votre chaîne SQL :
    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
     
    DECLARE @myVAR VARCHAR(50), @Requete VARCHAR(500)
     
    SET @myVAR = 'HELLO'
    SET @Requete = 'SELECT CASE WHEN @myVAR = ''good'' THEN'
     
    PRINT 'Requete 1 : ' + @Requete
     
    SET @Requete = 'SELECT CASE WHEN ' + @myVAR + ' = ''good'' THEN'
     
    PRINT 'Requete 2 : ' + @Requete
     
     
    Requete 1 : SELECT CASE WHEN @myVAR = 'good' THEN
    Requete 2 : SELECT CASE WHEN HELLO = 'good' THEN

  3. #3
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    Vous pouvez vous inspirer de que j'ai décrit ici ((§ Vous pouvez aussi vous retourner des valeurs)

    @++

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2006
    Messages : 61
    Par défaut
    Merci

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

Discussions similaires

  1. Comment coder une requete dynamique avec une Variable binaire.
    Par BoromSikim dans le forum Développement
    Réponses: 11
    Dernier message: 03/03/2009, 17h17
  2. [RegEx] utiliser une variable variable (dynamique) dans preg_replace
    Par thibs44 dans le forum Langage
    Réponses: 1
    Dernier message: 18/01/2007, 11h29
  3. utilisation de variable dans une requete
    Par JUSTIN Loïc dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 26/07/2006, 08h40
  4. Réponses: 5
    Dernier message: 04/05/2006, 21h02
  5. probleme d'utilisation de variables reel dans 1 requete SQl
    Par arawak dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 12/01/2006, 15h41

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