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 |
Sì |
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 |
Sì |
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 |
Sì |
DatabaseName |
nvarchar |
Nome del database nel quale viene eseguita l'istruzione dell'utente. |
35 |
Sì |
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 |
Sì |
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 |
Sì |
IsSystem |
int |
Indica se l'evento si è verificato in un processo di sistema o in un processo utente. 1 = sistema, 0 = utente. |
60 |
Sì |
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 |
Sì |
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 |
Sì |
NTDomainName |
nvarchar |
Dominio di Windows a cui appartiene l'utente. |
7 |
No |
NTUserName |
nvarchar |
Nome utente di Windows. |
6 |
Sì |
RequestID |
int |
ID della richiesta che ha preparato il cursore. |
49 |
Sì |
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 |
Sì |
SPID |
int |
ID della sessione in cui si è verificato l'evento. |
12 |
Sì |
StartTime |
datetime |
Ora di inizio dell'evento, se disponibile. |
14 |
Sì |
TransactionID |
bigint |
ID della transazione assegnato dal sistema. |
4 |
Sì |
XactSequence |
bigint |
Token utilizzato per descrivere la transazione corrente. |
50 |
Sì |
Vedere anche
Concetti
Altre risorse
Monitoraggio di eventi
sp_trace_setevent (Transact-SQL)