Classe d'événements SQL:StmtRecompile

La classe d'événements SQL:StmtRecompile indique les recompilations au niveau des instructions causées par tous les types de lots : procédures stockées, déclencheurs, traitements ad hoc et requêtes. Les requêtes peuvent être envoyées avec sp_executesql, SQL dynamique, des méthodes Prepare, des méthodes Execute ou des interfaces analogues. À partir de SQL Server 2005, la classe d'événements SQL:StmtRecompile doit être utilisée à la place de la classe d'événements SP:Recompile.

Colonnes de la classe d'événements SQL:StmtRecompile

Nom de la colonne

Type de données

Description

ID de colonne

Filtrable

ApplicationName

nvarchar

Nom de l'application cliente qui a créé la connexion à une instance MicrosoftSQL Server. Cette colonne est remplie des valeurs transmises par l'application et non pas du nom affiché du programme.

10

Oui

ClientProcessID

int

ID affecté par l'ordinateur hôte au processus dans lequel s'exécute l'application cliente. Cette colonne de données est remplie si le client fournit l'ID du processus.

9

Oui

DatabaseID

int

ID de la base de données dans laquelle la procédure stockée est exécutée. Détermine la valeur pour une base de données à l'aide de la fonction DB_ID.

3

Oui

DatabaseName

nvarchar

Nom de la base de données dans laquelle la procédure stockée est exécutée.

35

Oui

EventSequence

int

Séquence d'un événement dans la demande.

51

Non

EventSubClass

int

Décrit les causes de la recompilation :

1 = Schéma modifié

2 = Statistiques modifiées

3 = Compilation différée

4 = Option Set modifiée

5 = Table temporaire modifiée

6 = Ensemble de lignes distant modifié

7 = Autorisations de recherche modifiées

8 = Environnement de notification de requête modifié

9 = Affichage partition modifié

10 = Options de curseur modifiées

11 = Option (recompilation) demandée

21

Oui

GroupID

int

ID du groupe de charges de travail où l'événement SQL Trace se déclenche.

66

Oui

HostName

nvarchar

Nom de l'ordinateur sur lequel s'exécute le client qui a envoyé cette instruction. Cette colonne de données est remplie si le client fournit le nom de l'hôte. Pour déterminer le nom de l'hôte, utilisez la fonction HOST_NAME.

8

Oui

IntegerData2

int

Décalage de fin de l'instruction dans la procédure stockée ou le traitement qui a provoqué la recompilation. Le décalage de fin est -1 si l'instruction est la dernière de son traitement.

55

Oui

IsSystem

int

Indique si l'événement s'est produit sur un processus système ou un processus utilisateur.

1 = système

0 = utilisateur

60

Oui

LineNumber

int

Numéro de séquence de cette instruction dans le traitement, le cas échéant.

5

Oui

LoginName

nvarchar

Nom de la connexion qui a envoyé ce traitement.

11

Oui

LoginSid

image

Identificateur de sécurité (SID) de l'utilisateur actuellement connecté. Vous pouvez trouver ces informations dans l'affichage catalogue sys.server_principals. Chaque SID est unique pour chaque connexion dans le serveur.

41

Oui

NestLevel

int

Niveau d'imbrication de l'appel de la procédure stockée. Par exemple, la procédure stockée my_proc_a appelle my_proc_b. Dans ce cas, my_proc_a a un NestLevel égal à 1, my_proc_b a un NestLevel égal à 2.

29

Oui

NTDomainName

nvarchar

Domaine Windows auquel appartient l'utilisateur.

7

Oui

NTUserName

nvarchar

Nom d'utilisateur Windows de l'utilisateur connecté.

6

Oui

ObjectID

int

L'identificateur, attribué par le système, de l'objet contenant l'instruction ayant provoqué la recompilation. Cet objet peut consister en une procédure stockée, une fonction définie par l'utilisateur ou un déclencheur. Pour les lots ad hoc ou les instructions SQL préparées, ObjectID et ObjectName retournent une valeur NULL.

22

Oui

ObjectName

nvarchar

Nom de l'objet identifié par ObjectID.

34

Oui

ObjectType

int

Valeur représentant le type de l'objet qui intervient dans l'événement. Pour plus d'informations, consultez Colonne d'événements de trace ObjectType.

28

Oui

Offset

int

Décalage de début de l'instruction dans la procédure stockée ou le traitement qui a provoqué la recompilation.

61

Oui

RequestID

int

ID de la demande qui contient l'instruction.

49

Oui

ServerName

nvarchar

Nom de SQL Server tracé.

26

Non

SessionLoginName

nvarchar

Nom de connexion de l'utilisateur qui a créé la session. Par exemple, si vous vous connectez à SQL Server en utilisant le nom Connexion1 et que vous exécutez une instruction en tant que Connexion2, SessionLoginName affiche Connexion1 et LoginName, Connexion2. Cette colonne affiche les connexions SQL Server et Windows.

64

Oui

SPID

int

Identificateur du processus serveur de la connexion.

12

Oui

SqlHandle

varbinary

Hachage 64 bits reposant sur le texte d'une requête ad hoc ou la base de données et l'identificateur d'un objet SQL. Cette valeur peut être passée à sys.dm_exec_sql_text pour récupérer le texte SQL associé.

63

Non

StartTime

datetime

Heure de début de l'événement, si elle est disponible.

14

Oui

TextData

ntext

Texte de l'instruction Transact-SQL qui a été recompilée.

1

Oui

TransactionID

bigint

ID affecté par le système à la transaction.

4

Oui

XactSequence

bigint

Jeton qui décrit la transaction actuelle.

50

Oui