|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : septembre 2006 Messages : 40 ![]() |
Bonjour,
J'ai une table "Toto" qui a un champ "Rq_SQL". Ce champ contient une requête sql de type SELECT. Code :
Toto.Rq_SQL = "Select count(id_client) from Tb_Clients where len(id_client)>6" J'ai fait un curseur qui lit la table et exécute la requête qui est contenu dans le champ Toto.Rq_SQL en utilisant la procédure stockée système sp_executesql, mais je n'arrive pas à récupérer le résultat de la requête pour l'insérer dans un champs d'une autre table. Si je fais sp_execute [requete], paramètre1 output ,@Nb output ça fonctionne bien. ça affiche le résultat correct dans SQL Server Mais je n'arrive pas à mettre le résultat du sp_execute dans une variable. Ma variable est toujours vide. Petite précision : La requête que j'exécute n'a pas de paramètres. Avez-vous un exemple d'utilisation de sp_executesql ou avez-vous une autre idée pour récupérer le résultat de la requête dans une variable ? Merci d'avance. Boubou_s |
|
|
00
|
|
|
#2 | ||||||
![]() ![]() ![]() Nicolas SouquetAdministrateur de base de données Inscription : janvier 2005 Messages : 4 667 ![]() |
Bonjour,
C'est en fait un peu plus compliqué que cela. Pour récupérer la valeur de votre requête (en supposant donc que toute les requêtes retournent un entier), vous devez déclarer une variable de sortie et l'affecter dans votre chaîne requête. Pour faire un test, j'ai donc créé et peuplé la table suivante : Code :
Code :
Code :
Code :
EXEC dbo.usp_get_table_count 'Tb_Clients'
Me retourne : ![]() Il vous suffit donc maintenant d'appeler cette procédure dans votre c... ha ! j'arrive pas à le taper ! @++
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes. Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012 |
||||||
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : septembre 2006 Messages : 40 ![]() |
Merci Elsuket, finalement j'ai trouvé exactement ce que vous avez marqué dans votre message.
En tout cas merci pour votre message et votre implication et je pense que cela pourra servir à d'autres débutants en Transact-SQL comme moi. Encore merci. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com