Partager via


Classe d'événements CursorPrepare

La classe d'événements CursorPrepare décrit les événements de préparation des curseurs qui se produisent dans les curseurs d'API (Application Programming Interface). Les événements de préparation de curseurs se produisent lorsque le Microsoft Moteur de base de données compile une instruction SELECT associée à un curseur dans un plan d'exécution mais ne crée pas le curseur.

Incluez la classe d'événements CursorPrepare dans les traces qui enregistrent les performances des curseurs. Lorsque la classe d'événements CursorPrepare est incluse dans une trace, la charge générée varie selon la fréquence d'utilisation des curseurs sur la base de données pendant la trace. Si des curseurs sont utilisés de façon intensive, la trace peut compromettre de façon significative les performances.

Colonnes de données de la classe d'événements CursorPrepare

Nom de la colonne de données

Type de données

Description

ID de colonne

Filtrable

ApplicationName

nvarchar

Nom de l'application cliente qui a créé la connexion à une instance de SQL Server. Cette colonne est remplie des valeurs transmises par l'application et 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 l'ID du processus client est fourni par le client.

9

Oui

DatabaseID

int

Identificateur de la base de données spécifiée par l'instruction USE database ou celui de la base de données par défaut si aucune instruction USE database n'a été émise pour une instance donnée. Le SQL Server Profiler affiche le nom de la base de données si la colonne de données ServerName est capturée dans la trace et que le serveur est disponible. 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 où l'instruction de l'utilisateur est exécutée.

35

Oui

EventClass

int

Type d'événement enregistré = 70.

27

Non

EventSequence

int

Séquence de la classe d'événements CursorPrepare dans un traitement.

51

Non

GroupID

int

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

66

Oui

Handle

int

Descripteur de la classe d'événements.

33

Oui

HostName

nvarchar

Nom de l'ordinateur sur lequel le client est exécuté. Cette colonne de données est remplie si le nom d'hôte est fourni par le client. Pour déterminer le nom de l'hôte, utilisez la fonction HOST_NAME.

8

Oui

IsSystem

int

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

60

Oui

LoginName

nvarchar

Nom de la connexion de l'utilisateur (soit la connexion de sécurité SQL Server, soit les informations d'identification de connexion Windows sous la forme DOMAINE\nom_utilisateur).

11

Oui

LoginSid

image

Numéro d'identification de sécurité (SID) de l'utilisateur connecté. Vous pouvez trouver ces informations dans l'affichage catalogue sys.server_principals. Chaque SID est unique pour chaque connexion du serveur.

41

Oui

NTDomainName

nvarchar

Domaine Windows auquel appartient l'utilisateur.

7

Non

NTUserName

nvarchar

Nom d'utilisateur Windows.

6

Oui

RequestID

int

Identification de la demande qui a préparé le curseur.

49

Oui

ServerName

nvarchar

Nom de l'instance de SQL Server tracée.

26

Non

SessionLoginName

nvarchar

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

64

Oui

SPID

int

ID de la session dans laquelle l'événement s'est produit.

12

Oui

StartTime

datetime

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

14

Oui

TransactionID

bigint

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

4

Oui

XactSequence

bigint

Jeton utilisé pour décrire la transaction active.

50

Oui