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 :

exec sp_executesql => Paramètre '@statement'


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 55
    Par défaut exec sp_executesql => Paramètre '@statement'
    Bonjour,

    Voici un bout de mon code :

    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
    OPEN c_fktest
     
    	FETCH c_fktest INTO @ls_fkname,@ls_fktab;
     
    	WHILE @@FETCH_STATUS = 0
    	BEGIN
     
    	     set @ls_req = N'ALTER TABLE '+ @ls_fktab +' NOCHECK CONSTRAINT '+ @ls_fkname + ';'
    	     EXEC sp_executesql @ls_req
     
    	     FETCH c_fktest INTO @ls_fkname,@ls_fktab
    	END
     
      CLOSE c_fktest
      DEALLOCATE c_fktest
    Et voici l'erreur retournée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Paramètre '@statement' de type 'ntext/nchar/nvarchar' attendu par la procédure.
    En remplacant l'execution par un print, j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ALTER TABLE libre_desc_evt NOCHECK CONSTRAINT fk_parc_libre_desc_evt;
    ALTER TABLE libre_val_evt NOCHECK CONSTRAINT fk_libre_val_evt;
    ALTER TABLE libre_val_inst NOCHECK CONSTRAINT fk_libre_val_inst_instrument;
    ...
    ...
    Je ne comprends pas l'erreur et quoi rajouter lors de mon appel à sp_executesql.

    Merci d'avance.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 142
    Par défaut
    Pourrais-tu nous mettre la ligne de déclaration de la variable @ls_req stp ?

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 55
    Par défaut
    Bien vu il s'agissait de la declaration de cette variable...

    Il faut un NVARCHAR et non un VARCHAR pour passer cette requête.

    PB résolu

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

Discussions similaires

  1. [PHP 5.2] exec paramètre de retour
    Par Mandarine dans le forum Langage
    Réponses: 6
    Dernier message: 04/02/2011, 16h59
  2. Exec : passage d'une liste en paramètre
    Par djuju dans le forum Tcl/Tk
    Réponses: 1
    Dernier message: 31/10/2009, 18h06
  3. Réponses: 2
    Dernier message: 18/10/2008, 14h42
  4. execute statement et paramètre de type date
    Par aallal dans le forum SQL
    Réponses: 7
    Dernier message: 19/09/2007, 17h51
  5. [SQL SERVER 2k]Problème EXEC sp_executesql
    Par Filippo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/07/2006, 11h58

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