[SQL Server] Curseurs : comparaison de performances avec une boucle WHILE

Ce petit billet offre quelques éléments de comparaison de performances entre un curseur et une boucle WHILE. Il est de notoriété publique que les curseurs sont à éviter et qu’il est de bon ton de les remplacer par, par exemple, une boucle WHILE pour des raisons de performances.

Nous allons nous intéresser aux statistiques I/O et aux temps d’exécution. De plus, chaque type de curseur sera testé (FAST_FORWARD, STATIC, KEYSET et DYNAMIC).

Lire la suite

[SQL Server] Curseurs : présentation générale

En règle générale, l’utilisation d’un curseur est vivement déconseillée pour principalement des raisons de performances, SQL Server étant optimisé pour les opérations ensemblistes, sachant que les curseurs effectuent des opérations itératives. Ce billet présente néanmoins ce qu’est concrètement un curseur, comment il fonctionne sous SQL Server et en quoi il peut avoir un impact négatif sur les performances.

Lire la suite