CommencerCommencez gratuitement

Tester les performances des fonctions de conversion sécurisées

Dans les deux exercices précédents, nous avons étudié les fonctions TRY_CAST(), TRY_CONVERT() et TRY_PARSE(). Ces fonctions n’offrent pas toutes les mêmes performances. Dans cet exercice, vous allez exécuter un test de performance sur toutes les dates de notre table de calendrier.

Pour vous faciliter la tâche, nous avons préchargé les dates de la table dbo.Calendar dans une table temporaire appelée DateText, qui contient une seule colonne NVARCHAR(50) nommée DateText.

Pour les trois premières étapes, les instructions seront identiques : complétez les valeurs manquantes pour terminer l’appel de fonction approprié. Ensuite, observez le temps d’exécution de chaque opération et gardez ces résultats en tête. Vous résumerez ensuite vos conclusions à l’étape 4.

Cet exercice fait partie du cours

<cours>Analyse de séries temporelles dans SQL Server</cours>
Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- Try out how fast the TRY_CAST() function is
-- by try-casting each DateText value to DATE
DECLARE @StartTimeCast DATETIME2(7) = SYSUTCDATETIME();
SELECT ___(___ ___ ___) AS TestDate FROM #DateText;
DECLARE @EndTimeCast DATETIME2(7) = SYSUTCDATETIME();

-- Determine how much time the conversion took by
-- calculating the date difference from @StartTimeCast to @EndTimeCast
SELECT
    DATEDIFF(MILLISECOND, @StartTimeCast, @EndTimeCast) AS ExecutionTimeCast;
Modifier et exécuter le code