Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Azure SQL Database
Instancia
administrada de Azure SQLBase de datos SQL en Microsoft Fabric
Hace que Microsoft SQL Server ejecute instrucciones Transact-SQL y genere información detallada sobre cómo se ejecutaron las instrucciones en un documento XML definido correctamente.
Convenciones de sintaxis de Transact-SQL
Sintaxis
SET STATISTICS XML { ON | OFF }
Comentarios
La configuración de SETSET STATISTICS XML se establece en tiempo de ejecución o ejecución y no en tiempo de análisis sintáctico.
Cuando SETSET STATISTICS XML está ACTIVADO, SQL Server devuelve la información de ejecución de cada sentencia tras ejecutarla. Cuando esta opción está establecida en ON, se devuelve información sobre todas las instrucciones Transact-SQL siguientes hasta que se vuelve a establecer en OFF. Ten en cuenta que SETSET STATISTICS XML no tiene por qué ser la única afirmación en un lote.
SET SET STATISTICS XML devuelve la salida como nvarchar(max) para aplicaciones, como la utilidad SQLCMD , donde la salida XML es posteriormente utilizada por otras herramientas para mostrar y procesar la información del plan de consulta.
SET SET STATISTICS XML devuelve la información como un conjunto de documentos XML. Cada sentencia después de la SETSET STATISTICS XML sentencia ON se refleja en la salida por un solo documento. Cada documento contiene el texto de la instrucción, seguido de los detalles de los pasos de ejecución. La salida muestra información en tiempo de ejecución, como los costos, los índices a los que se ha tenido acceso, los tipos de operaciones realizadas, el orden de combinación, el número de veces que se realiza una operación física, el número de filas generadas por cada operador físico, etc.
El documento que contiene el esquema XML para la salida XML se SETSET STATISTICS XML copia durante la configuración a un directorio local del ordenador donde está instalado Microsoft SQL Server. Se encuentra en la unidad que contiene los archivos de instalación de SQL Server, en:
\Microsoft SQL Server\100\Tools\Binn\schemas\sqlserver\2004\07\showplan\showplanxml.xsd
El esquema del plan de presentación se puede encontrar también en este sitio web.
SET SET STATISTICS PROFILE y SETSET STATISTICS XML son contrapartes mutuas. El primero genera resultados en formato de texto y el último en formato XML. En futuras versiones de SQL Server, la nueva información del plan de ejecución de consultas solo se mostrará a través de la SETSET STATISTICS XML sentencia, no de la SETSET STATISTICS PROFILE sentencia.
Nota
Si se selecciona Incluir Plan de Ejecución Real en SQL Server Management Studio, esta SET opción no produce la salida de XML Showplan. Borra el botón Incluir Plan de Ejecución Real antes de usar esta SET opción.
Permisos
Para usar SETSET STATISTICS XML y ver la salida, los usuarios deben tener los siguientes permisos:
Permisos correspondientes para ejecutar las instrucciones Transact-SQL.
El permiso SHOWPLAN para todas las bases de datos que contienen objetos a los que hacen referencia las instrucciones Transact-SQL.
Para Transact-SQL sentencias que no producen STATISTICS XML conjuntos de resultados, solo se requieren los permisos adecuados para ejecutar las sentencias Transact-SQL. Para Transact-SQL sentencias que sí producen STATISTICS XML conjuntos de resultados, las comprobaciones tanto del permiso de ejecución de la Transact-SQL sentencia como del permiso SHOWPLAN deben tener éxito, o la ejecución de la Transact-SQL se aborta y no se genera información de Showplan.
Ejemplos
Las dos sentencias que siguen utilizan la SETSET STATISTICS XML configuración para mostrar cómo SQL Server analiza y optimiza el uso de índices en las consultas. La primera consulta utiliza el operador de comparación Es igual a (=) en la cláusula WHERE de una columna indizada. La segunda consulta utiliza el operador LIKE en la cláusula WHERE. De este modo, SQL Server debe utilizar un recorrido de índice no clúster para encontrar los datos que satisfacen la condición de la cláusula WHERE. Los valores de los atributos EstimateRows y EstimatedTotalSubtreeCost son inferiores en la primera consulta indizada, lo que indica que se procesa mucho más rápidamente y que usa menos recursos que la no indizada.
USE AdventureWorks2022;
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