Comment faire une boucle à l'appel d'une procédure stockée dans SQL Server 2008 R2?
J'ai besoin d'appeler une procédure stockée à plusieurs reprises. Comment puis-je mettre cela dans une boucle?
DECLARE @return_value int,
@sinresultado varchar(200),
@svcmensaje varchar(200)
EXEC @return_value = [dbo].[ppocfdcancelacionwsejecuta]
@evcrfcemisor = N'BBA940707IE1',
@evcserie = N'XXAABB',
@evcfolio = N'666',
@sinresultado = @sinresultado OUTPUT,
@svcmensaje = @svcmensaje OUTPUT
J'ai besoin de faire @evcfolio
à courir à partir de 1 à 10 dans la même boucle. Comme un pour en de java et de la valeur de evcfolio
augmentation de 1 chaque boucle.
Merci pour votre temps.
- Ne le faites pas. Vous ajoutez les frais généraux de votre demande par l'appel d'une procédure stockée dans une boucle. Envisager de modifier la conception de sorte que vous pouvez passer d'une liste de valeurs à interroger et à seulement exécuter la procédure une fois. Lire sur Table des Paramètres.
Vous devez vous connecter pour publier un commentaire.
SET @Counter = 666; While @Counter <= 10
? Quelque chose de pas bien là... vous ne serez jamais à entrer dans votreWHILE
bloc.Alors que je suis d'accord que la restructuration de la procédure stockée et d'avoir à traiter avec de la boucle (ou d'un ensemble dans un TVP) au lieu d'appeler la procédure plusieurs fois, c'est une meilleure approche, en attendant, les boucles dans n'importe quelle langue sont assez simple, et vous pouvez faire quelque chose comme ceci: