J'ai un curseur et je cherche à supprimer la procédure stockée et à utiliser une opération basée sur un ensemble ou d'autres méthodes ou suggestions.Besoin de réécrire un curseur
Corrections possibles:
- Ajouter la clause du proc existant stocké (Create_Sales_Orders)
Ajouter une boucle While
WHILE @currentRow<[email protected] BEGIN -- EXEC Create_Sales_Orders SET @currentRow = @currentRow + 1 END
Mon curseur
DECLARE MyCNT CURSOR FOR
................
-- Select statement Returns 6 columns and 69 rows of data
................
OPEN MyCNT
FETCH NEXT FROM MyCNT INTO @StoreId,@DateToProcess,@Cus_source_id,@Cus_id,@Pos_Source_id,@POS_Id
WHILE (@@FETCH_STATUS = 0)
BEGIN
EXEC Create_Sales_Orders --> looking to get rid of this....take a long time to run
@StoreId,
@DateToProcess,
@Cus_source_id,
@Cus_id,
@Pos_Source_id,
@POS_Id
FETCH NEXT FROM MyCNT INTO @StoreId,@DateToProcess,@Cus_source_id,@Cus_id,@Pos_Source_id,@POS_Id
END
CLOSE MyCNT
DEALLOCATE MyCNT
Que signifie 'Create_Sales_Orders' faire? – SWeko
Appelle une série d'insertions et de mises à jour d'une table de transactions de vente .... –
Vous voulez donc réécrire votre SP pour être plus rapide? –