N'oubliez pas les correctifs

On ne le dira jamais assez, il faut installer les correctifs sur vos instances SQL Server.

Microsoft a enfin mis en ligne une page tenue à jour qui recense les correctifs pour toutes les versions de SQL Server, de la version 6.5 (hé oui !) à la version 2022.

Mais bien sûr, si vous utilisez SQL Server 2012 (fin du support étendu le 12 juillet 2023, on y est) ou une version encore plus ancienne, envisagez à court terme la mise à jour vers une version encore supportée par Microsoft.

Pour installer un correctif, pour ma part, j'attends en général une quinzaine de jours avant de l'appliquer, histoire d'éviter des régressions imprévues (il y a même eu des retraits de correctifs en catastrophe dans le passé, quelques jours après leur sortie).

En ce qui concerne SQL Server 2022 par exemple, le correctif Cumulative Update 4 avait quelques bugs qui pourraient se révéler gênants.

En voilà un, heureusement corrigé depuis par le Cumulative Update 5 :

-- Créons une table avec un  index descendant
DECLARE @T table (i integer NOT NULL INDEX ii (i DESC));
INSERT @T (i) VALUES (1), (2), (3);

-- Cette requête renvoie les données en ordre descendant !
SELECT Ascending = T.i
FROM @T AS T
WHERE T.i IN (1, 2, 3)
ORDER BY T.i ASC; -- Mais nous avions demandé un ordre ascendant

-- Cette requête renvoie les données en ordre ascendant !
SELECT Descending = T.i
FROM @T AS T
WHERE T.i IN (1, 2, 3)
ORDER BY T.i DESC; -- Mais nous avions demandé un ordre descendant

-- CU 4 : L'ordre est incorrect avec un index descendant et un prédicat IN sur cette clé