Share via


Classe di evento CursorPrepare

La classe di evento CursorPrepare descrive gli eventi di preparazione del cursore che si verificano per i cursori delle API. Gli eventi di preparazione del cursore vengono generati quando Microsoft Motore di database di SQL Server 2005 compila in un piano di esecuzione l'istruzione SELECT associata a un cursore, senza tuttavia creare il cursore.

Includere la classe di evento CursorPrepare nelle tracce che registrano le prestazioni dei cursori. Quando si include la classe di evento CursorPrepare in una traccia, la quantità di overhead generato dipenderà da quanto frequentemente vengono utilizzati i cursori nel database durante la traccia. Se si utilizzano diffusamente i cursori, l'esecuzione della traccia potrebbe ridurre in modo significativo le prestazioni.

Colonne di dati della classe di evento CursorPrepare

Nome colonna di dati Tipo di dati Descrizione ID colonna Filtrabile

ApplicationName

nvarchar

Nome dell'applicazione client in cui è stata creata la connessione a un'istanza di SQL Server. Questa colonna viene popolata con i valori passati dall'applicazione anziché con il nome visualizzato del programma.

10

ClientProcessID

int

ID assegnato dal computer host al processo in cui è in esecuzione l'applicazione client. Questa colonna di dati viene popolata se il client fornisce l'ID del processo client.

9

DatabaseID

int

ID del database specificato dall'istruzione USE database oppure il database predefinito se non è stata eseguita l'istruzione USE database per una determinata istanza. In SQL Server Profiler viene visualizzato il nome del database se nella traccia è stata acquisita la colonna di dati ServerName e il server è disponibile. È possibile determinare il valore per un database utilizzando la funzione DB_ID.

3

DatabaseName

nvarchar

Nome del database nel quale viene eseguita l'istruzione dell'utente.

35

EventClass

int

Tipo di evento registrato = 70.

27

No

EventSequence

int

Sequenza della classe di evento CursorPrepare nel batch.

51

No

Handle

int

Handle della classe di evento.

33

HostName

nvarchar

Nome del computer in cui è in esecuzione il client. Questa colonna di dati viene popolata se il client fornisce il nome host. Per determinare il nome host, utilizzare la funzione HOST_NAME.

8

IsSystem

int

Indica se l'evento si è verificato in un processo di sistema o in un processo utente. 1 = sistema, 0 = utente.

60

LoginName

nvarchar

Nome dell'account di accesso dell'utente (account di protezione di SQL Server o credenziali di accesso di Windows nel formato DOMINIO\nomeutente).

11

LoginSid

image

ID di protezione (SID) dell'utente connesso. Tali informazioni sono disponibili nella tabella syslogins del database master. Il SID è univoco per ogni account di accesso nel server.

41

NTDomainName

nvarchar

Dominio di Windows a cui appartiene l'utente.

7

No

NTUserName

nvarchar

Nome utente di Windows.

6

RequestID

int

ID della richiesta che ha preparato il cursore.

49

ServerName

nvarchar

Nome dell'istanza di SQL Server di cui si sta eseguendo la traccia.

26

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Ad esempio, se si attiva la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, SessionLoginName indica Login1 e LoginName indica Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

SPID

int

ID della sessione in cui si è verificato l'evento.

12

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TransactionID

bigint

ID della transazione assegnato dal sistema.

4

XactSequence

bigint

Token utilizzato per descrivere la transazione corrente.

50

Vedere anche

Concetti

Cursori (Motore di database)

Altre risorse

Monitoraggio di eventi
sp_trace_setevent (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005