ZESTAW SHOWPLAN_XML (Transact-SQL)
Powoduje, że SQL Server nie do wykonać Transact-SQL instrukcji.Zamiast tego SQL Server zwraca szczegółowe informacje na temat jak oświadczenia mają być wykonany w postaci dobrze dokumentu XML
Składnia
SET SHOWPLAN_XML { ON | OFF }
Uwagi
Ustawienie ustawianie SHOWPLAN_XML jest zestaw na wykonać lub czas jednostkowy i nie analizować czas.
Gdy ustawienie SHOWPLAN_XML jest włączone, SQL Server zwraca informacje plan wykonania dla każdego instrukcja bez wykonywania, i Transact-SQL sprawozdań nie zostaną wykonane.Po tej opcji jest zestaw na, wykonanie planu informacje o wszystkich kolejnych Transact-SQL sprawozdania jest zwracany, dopóki jest opcja zestaw OFF.Na przykład, jeżeli utworzenie tabeli wykonaniu instrukcja , podczas gdy ustawienie SHOWPLAN_XML jest włączone, SQL Server zwraca komunikat o błędzie z kolejnych SELECT instrukcja dotyczących tej samej tabela; określona tabela nie istnieje.Dlatego kolejne odwołania do tej tabela nie powiedzie się.Gdy ustawienie SHOWPLAN_XML jest wyłączona, SQL Server wykona instrukcje bez generowania raportu.
Ustaw SHOWPLAN_XML zamierza zwrócić wynik jako nvarchar(max) dla aplikacji, takich jak polecenie sqlcmd narzędzia, w którym dane wyjściowe XML są następnie używane przez inne narzędzia do wyświetlania i przetwarzać informacje planu kwerend.
Ostrzeżenie
dynamiczny widok zarządzania sys.dm_exec_query_plan, zwraca te same informacje, jak USTAWIĆ XML SHOWPLAN w xml typu danych.Informacje te są zwracane z query_plan kolumna sys.dm_exec_query_plan.Aby uzyskać więcej informacji, zobacz sys.dm_exec_query_plan (języka Transact-SQL).
Nie można określić zestaw SHOWPLAN_XML wewnątrz procedura składowana.Musi być jedynym instrukcja w partia.
Ustaw SHOWPLAN_XML zwraca informacje, jak zestaw dokumentów XML.Każdej partia po USTAWIONA na SHOWPLAN_XML instrukcja jest odzwierciedlona w danych wyjściowych przez jednolity dokument.Każdy dokument zawiera tekst instrukcji w partia, następuje szczegóły wykonanie czynności.Dokument zawiera szacowanych kosztów numery wierszy, dostęp do indeksów i typy operatorów wykonywane łączyć zamówienia oraz więcej informacji o wykonanie planów.
Dokument zawierający schemat XML dla danych wyjściowych XML przez ustawienie SHOWPLAN_XML jest kopiowany podczas instalacji do katalogu lokalnego na komputerze, w których firma Microsoft SQL Server jest zainstalowany.Można znaleźć na dysku zawierającym SQL Server plików instalacyjnych na:
\Microsoft SQL Server\90\Tools\Binn\schemas\sqlserver\2004\07\plan wykonania\showplanxml.xsd
Schemat Showplan można także znaleźć w tę witryna sieci Web.
Ostrzeżenie
Jeśli Zawierają rzeczywiste Plan wykonania wybrany w SQL Server Management Studio, to nie produkują zestawu opcji danych wyjściowych XML Showplan.Wyczyść Zawierają rzeczywiste Plan wykonania przycisk przed za pomocą tej opcji.
Uprawnienia
Aby użyć zestawu SHOWPLAN_XML, musi mieć uprawnienia wystarczające do wykonać instrukcji, na które SHOWPLAN_XML USTAWIONY jest wykonywany i musi mieć uprawnienie SHOWPLAN dla wszystkich baz danych zawierających obiekty.
Dla SELECT, INSERT, UPDATE i DELETE, szefowie stored_procedureoraz szefowie user_defined_function instrukcji do produkcji Showplan, użytkownik musi:
Mieć odpowiednie uprawnienia do wykonać Transact-SQL instrukcji.
SHOWPLAN uprawnienia do wszystkich baz danych zawierających obiekty odwołuje się Transact-SQL instrukcji, takich jak tabele, widoki i tak dalej.
Dla wszystkich innych sprawozdań, takich jak DDL, UŻYJ database_name, SET, DECLARE, SQLdynamiczne i tak dalej tylko odpowiednie uprawnienia do wykonać Transact-SQL sprawozdania są potrzebne.
Aby uzyskać więcej informacji, zobacz SHOWPLAN zabezpieczeń i Uprawnienie SHOWPLAN i instancje Transact-SQL.
Przykłady
Dwie deklaracje, które należy wykonać za pomocą ustawień SHOWPLAN_XML USTAWIĆ demonstrujące sposób SQL Server analizuje i optymalizuje wykorzystanie indeksów w kwerendach.
Pierwszą kwerendę używa porównania równości operator (=) w klauzula WHERE w kolumnaindeksowanej.Drugą kwerendę używa operator LIKE w klauzulaWHERE.Zmusza to SQL Server Skanowanie indeks klastrowany i znaleźć dane spełniające warunek klauzula WHERE.Wartości w EstimateRows i EstimatedTotalSubtreeCost atrybuty są mniejsze dla pierwszej kwerendy indeksowanych, wskazujący, że jest przetwarzana znacznie szybciej i wykorzystuje mniej zasobów niż nieindeksowanych kwerendy.
USE AdventureWorks2008R2;
GO
SET SHOWPLAN_XML ON;
GO
-- First query.
SELECT BusinessEntityID
FROM HumanResources.Employee
WHERE NationalIDNumber = '509647174';
GO
-- Second query.
SELECT BusinessEntityID, LoginID
FROM HumanResources.Employee
WHERE JobTitle LIKE 'Production%';
GO
SET SHOWPLAN_XML OFF;