SET STATISTICS XML (Transact-SQL)SET STATISTICS XML (Transact-SQL)

APLICA-SE A: SimSQL Server SimBanco de Dados SQL do Azure NãoAzure Synapse Analytics (SQL DW) NãoParallel Data Warehouse APPLIES TO: YesSQL Server YesAzure SQL Database NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

Faz com que o Microsoft SQL ServerSQL Server execute instruções Transact-SQLTransact-SQL e gere informações detalhadas sobre como as instruções foram executadas na forma de um documento XML bem-definido.Causes Microsoft SQL ServerSQL Server to execute Transact-SQLTransact-SQL statements and generate detailed information about how the statements were executed in the form of a well-defined XML document.

Ícone de link do tópico Convenções da sintaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxeSyntax

  
SET STATISTICS XML { ON | OFF }  

ComentáriosRemarks

A configuração de SET STATISTICS XML é definida no momento da execução ou do tempo de execução, e não no momento da análise.The setting of SET STATISTICS XML is set at execute or run time and not at parse time.

Quando SET STATISTICS XML estiver ON (acionado), o SQL ServerSQL Server retorna informações de execução para cada instrução, depois de executá-las.When SET STATISTICS XML is ON, SQL ServerSQL Server returns execution information for each statement after executing it. Depois que essa opção estiver definida como ON, as informações sobre todas as instruções Transact-SQLTransact-SQL subsequentes serão retornadas até que a opção esteja definida como OFF.After this option is set ON, information about all subsequent Transact-SQLTransact-SQL statements is returned until the option is set to OFF. Note que SET STATISTICS XML não precisa ser a única instrução em um lote.Note that SET STATISTICS XML need not be the only statement in a batch.

SET STATISTICS XML retorna a saída como nvarchar(max) para aplicativos, como o utilitário sqlcmd, em que a saída XML é posteriormente usada por outras ferramentas para exibir e processar as informações do plano de consulta.SET STATISTICS XML returns output as nvarchar(max) for applications, such as the sqlcmd utility, where the XML output is subsequently used by other tools to display and process the query plan information.

SET STATISTICS XML retorna informações como um conjunto de documentos XML.SET STATISTICS XML returns information as a set of XML documents. Todas as instruções depois da instrução STATISTICS XML ON serão refletidas na saída por um único documento.Each statement after the SET STATISTICS XML ON statement is reflected in the output by a single document. Cada documento conterá o texto das instruções, seguido dos detalhes das etapas da execução.Each document contains the text of the statement, followed by the details of the execution steps. A saída mostra informações de tempo de execução como os custos, índices acessados e tipos de operações executadas, ordem de junção, o número de horas de execução de uma operação física, o número de linhas que cada operador físico produziu, e mais.The output shows run-time information such as the costs, accessed indexes, and types of operations performed, join order, the number of times a physical operation is performed, the number of rows each physical operator produced, and more.

O documento que contém o esquema XML para a saída do XML por SET STATISTICS XML é copiado durante a instalação em um diretório local no computador no qual o Microsoft SQL ServerSQL Server está instalado.The document containing the XML schema for the XML output by SET STATISTICS XML is copied during setup to a local directory on the computer on which Microsoft SQL ServerSQL Server is installed. Ele pode ser encontrado na unidade que contém os arquivos de instalação do SQL ServerSQL Server, em:It can be found on the drive containing the SQL ServerSQL Server installation files, at:

\Microsoft SQL Server\100\Tools\Binn\schemas\sqlserver\2004\07\showplan\showplanxml.xsd\Microsoft SQL Server\100\Tools\Binn\schemas\sqlserver\2004\07\showplan\showplanxml.xsd

O esquema do plano de execução também pode ser encontrado neste site.The Showplan Schema can also be found at this Web site.

SET STATISTICS PROFILE e SET STATISTICS XML são contrapartes um do outro.SET STATISTICS PROFILE and SET STATISTICS XML are counterparts of each other. O primeiro produz saída textual; o último produz saída XML.The former produces textual output; the latter produces XML output. Em versões futuras do SQL ServerSQL Server, novas informações do plano de execução de consultas serão exibidas apenas com a instrução SET STATISTICS XML, e não com a instrução SET STATISTICS PROFILE.In future versions of SQL ServerSQL Server, new query execution plan information will only be displayed through the SET STATISTICS XML statement, not the SET STATISTICS PROFILE statement.

Observação

Se Incluir Plano de Execução Real estiver selecionado no SQL Server Management StudioSQL Server Management Studio, essa opção SET não produzirá a saída do plano de execução XML.If Include Actual Execution Plan is selected in SQL Server Management StudioSQL Server Management Studio, this SET option does not produce XML Showplan output. Desmarque o botão Incluir Plano de Execução Real antes de usar esta opção SET.Clear the Include Actual Execution Plan button before using this SET option.

PermissõesPermissions

Para usar SET STATISTICS XML e exibir a saída, os usuários devem ter as seguintes permissões:To use SET STATISTICS XML and view the output, users must have the following permissions:

  • Permissões adequadas para executar as instruções Transact-SQLTransact-SQL.Appropriate permissions to execute the Transact-SQLTransact-SQL statements.

  • A permissão de SHOWPLAN em todos os bancos de dados que são referenciados pelas instruções Transact-SQLTransact-SQL.SHOWPLAN permission on all databases containing objects that are referenced by the Transact-SQLTransact-SQL statements.

Para instruções Transact-SQLTransact-SQL que não produzem conjuntos de resultados STATISTICS XML, somente serão necessárias as permissões apropriadas para executar as instruções Transact-SQLTransact-SQL.For Transact-SQLTransact-SQL statements that do not produce STATISTICS XML result sets, only the appropriate permissions to execute the Transact-SQLTransact-SQL statements are required. Para as instruções Transact-SQLTransact-SQL que produzem conjuntos de resultados STATISTICS XML, certifique-se de que ambas, a permissão de execução de instrução Transact-SQLTransact-SQL e a permissão SHOWPLAN sejam bem-sucedidas, ou a instrução de execução Transact-SQLTransact-SQL será anulada e nenhuma informação Showplan será gerada.For Transact-SQLTransact-SQL statements that do produce STATISTICS XML result sets, checks for both the Transact-SQLTransact-SQL statement execution permission and the SHOWPLAN permission must succeed, or the Transact-SQLTransact-SQL statement execution is aborted and no Showplan information is generated.

ExemplosExamples

As duas instruções a seguir usam as configurações SET STATISTICS XML para mostrar o modo como o SQL ServerSQL Server analisa e otimiza o uso de índices em consultas.The two statements that follow use the SET STATISTICS XML settings to show the way SQL ServerSQL Server analyzes and optimizes the use of indexes in queries. A primeira consulta usa o operador de comparação Igual a (=), na cláusula WHERE, em uma coluna indexada.The first query uses the Equals (=) comparison operator in the WHERE clause on an indexed column. A segunda consulta usa o operador LIKE na cláusula WHERE.The second query uses the LIKE operator in the WHERE clause. Isto força o SQL ServerSQL Server a usar uma verificação de índice clusterizado para localizar os dados que atendem à condição da cláusula WHERE.This forces SQL ServerSQL Server to use a clustered index scan to find the data that satisfies the WHERE clause condition. Os valores nos atributos EstimateRows e EstimatedTotalSubtreeCost são menores para a primeira consulta indexada, indicando que ela foi processada com maior rapidez e usou menos recursos que a consulta não indexada.The values in the EstimateRows and the EstimatedTotalSubtreeCost attributes are smaller for the first indexed query indicating that it was processed much faster and used fewer resources than the nonindexed query.

USE AdventureWorks2012;  
GO  
SET STATISTICS XML ON;  
GO  
-- First query.  
SELECT BusinessEntityID   
FROM HumanResources.Employee  
WHERE NationalIDNumber = '509647174';  
GO  
-- Second query.  
SELECT BusinessEntityID, JobTitle   
FROM HumanResources.Employee  
WHERE JobTitle LIKE 'Production%';  
GO  
SET STATISTICS XML OFF;  
GO  

Consulte TambémSee Also

SET SHOWPLAN_XML (Transact-SQL) SET SHOWPLAN_XML (Transact-SQL)
Utilitário sqlcmdsqlcmd Utility