> Tech > V. Le texte des requêtes dynamiques doit être parfaitement identique

V. Le texte des requêtes dynamiques doit être parfaitement identique

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Pour les requêtes dynamiques, le texte des requêtes doit être identique pour pouvoir être réutilisées. Des petites différences comme des caractères d'espace supplémentaires ou une différence de case dans le texte généreront des plans différents, et aucune réutilisation des plans cachés.

Les commentaires sont également considérés

V. Le texte des requêtes dynamiques doit être parfaitement identique

comme une partie du texte de la requête. Par conséquent les requêtes ci-dessous généreront deux plans cachés différents :

—this is an example of an adhoc query
if exists(Select Name From HumanResources.Department Where DepartmentID=10) declare @x int;
Go

—this is an example of an adhoc query with different comment
if exists(Select Name From HumanResources.Department Where DepartmentID=10) declare @x int;
Go

Utilisez la requête ci-dessous pour regarder le sql_handle et les plan_handles et pour noter qu’ils sont différents :

Select text, sql_handle, plan_handle
From sys.dm_Exec_query_stats qs Cross Apply sys.dm_Exec_sql_text(sql_handle)
Where text like ‘—this is an example %’
Go

Voir listing 3.
Attention aussi aux options positionnées lors de l’exécution des requêtes. Par exemple, OSQL positionne Quoted_ Identifier a ON alors que SQL Server Management Studio positionne Quoted_Identifier à OFF. Des requêtes identiques exécutées depuis ces différents clients auront des plans différents.

Téléchargez cette ressource

Guide de technologie 5G pour l’entreprise

Guide de technologie 5G pour l’entreprise

Le livre blanc "The Big Book of Enterprise 5G" vous fournit les informations stratégiques dont vous avez besoin pour prendre des décisions éclairées et préparer votre entreprise à prospérer dans l'ère de la 5G. Cradlepoint, part of Ericsson est le leader mondial des solutions de réseau sans fil 4G LTE et 5G fournies via le cloud. Connectez vos employés, lieux et objets avec la 4G LTE et la 5G pour un WAN sans fil d'entreprise.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010