Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di
AzureIstanza gestita di SQL di
AzureDatabase SQL in Microsoft Fabric
Fa sì che SQL Server visualizzi informazioni sulla quantità dell'attività di I/O a livello fisico e logico generata dalle istruzioni Transact-SQL. L'I/O fisico è correlato all'accesso alle pagine di dati su disco, mentre l'I/O logico è correlato all'accesso alle pagine di dati in memoria (cache dei dati).
Convenzioni relative alla sintassi Transact-SQL
Sintassi
SET STATISTICS IO { ON | OFF }
Output
Nella tabella seguente viene visualizzato un elenco di elementi di output e la relativa descrizione.
* I tipi di dati LOB (Large Object Binary) includono le pagine text, ntext, image, varchar(max), nvarchar(max), varbinary(max)o columnstore index.
** Non zero solo per database SQL di Azure Hyperscale.
Output di lettura della versione
Si applica a: Database SQL di Azure e database SQL in Microsoft Fabric
Se una sentenza legge versioni precedenti di righe da uno store versioni, l'output I/O è seguito da una riga per ogni oggetto che ha almeno una versione letta. Una versione viene letta ogni volta che il motore di database esamina una versione precedente di una riga in una catena di versioni per trovare quella visibile all'affermazione. Per maggiori informazioni, vedi Metriche di lettura delle versioni.
| Elemento di output | significato |
|---|---|
Object |
Nome qualificato per schema della tabella o della vista indicizzata. |
Tempdb versions read |
Numero di versioni di righe lette dal record di versioni in tempdb. |
In-row PVS versions read |
Numero di versioni di righe lette dallo store di versioni persistenti (PVS) che vengono memorizzate nella riga dati. |
Off-row PVS versions read |
Numero di versioni di righe lette dalla tabella interna PVS off-row. |
Online index PVS versions read |
Numero di versioni di righe lette dalla tabella interna PVS utilizzata mentre è in esecuzione un'operazione di indicizzazione online. |
Le letture delle versioni sono conteggi delle versioni delle righe, non conteggi delle pagine.
Osservazioni:
Quando STATISTICS IO è ATTIVATO, vengono visualizzate informazioni statistiche e, quando OFF, le informazioni non vengono visualizzate.
Quando questa opzione viene impostata su ON, tutte le istruzioni Transact-SQL restituiscono le informazioni statistiche fino a quando l'opzione non viene impostata su OFF.
L'impostazione di viene impostata in fase di SET STATISTICS IO esecuzione o in fase di esecuzione e non in fase di analisi.
Nota
Durante il recupero di colonne LOB da parte di istruzioni Transact-SQL, alcune operazioni di recupero possono richiedere più volte l'attraversamento dell'albero LOB. Questo può portare SETSET STATISTICS IO a riportare letture logiche superiori alle aspettative.
Autorizzazioni
Per usare SET STATISTICS IO, gli utenti devono disporre delle autorizzazioni appropriate per eseguire l'istruzione Transact-SQL. L'autorizzazione SHOWPLAN non è necessaria.
Esempi
In questo esempio viene illustrato il numero di operazioni di lettura logiche e fisiche usate da SQL Server per l'elaborazione delle istruzioni.
Nota
In database SQL di Azure e SQL database in Microsoft Fabric, l'USEaffermazione non è disponibile. Invece, collegati direttamente al database previsto ed esegui il resto del campione di codice.
USE AdventureWorks2022;
GO
SET STATISTICS IO ON;
GO
SELECT *
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS IO OFF;
GO
Ecco l'output del messaggio:
Table 'ProductCostHistory'. Scan count 1, logical reads 76, physical reads 0,
page server reads 0, read-ahead reads 0, page server read-ahead reads 0,
lob logical reads 0, lob physical reads 0, lob page server reads 0,
lob read-ahead reads 0, lob page server read-ahead reads 0.
In database SQL di Azure e SQL Database in Microsoft Fabric, se l'istruzione legge versioni righe, l'output include anche una riga di lettura versione per ogni oggetto con versioni read. Ad esempio, la riga seguente mostra che l'istruzione ha riportato 1.000 versioni a riga dalla tabella interna PVS off-row mentre leggeva la Production.ProductCostHistory tabella:
Object '[Production].[ProductCostHistory]'. Tempdb versions read 0, in-row PVS versions read 0,
off-row PVS versions read 1000, online index PVS versions read 0.