set STATISTICS xml (Transact-sql)

Neden Microsoft SQL Serveryürütmek için Transact-SQLdeyimleri ve nasıl iyi tanımlanmış bir xml belgesi şeklinde ifadeler idam edildi hakkında ayrıntılı bilgi üretmek.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

SET STATISTICS XML { ON | OFF }

Açıklamalar

set STATISTICS xml ayarı ayarlanır yürütme veya zaman değil ayrıştırma saati ve çalıştırın.

set STATISTICS xml açık, olduğunda SQL Servergörüneceği yürüttükten sonra her deyimi yürütme bilgilerini döndürür Sonra bu seçeneği on, bilgi sonraki tüm ayarlanır Transact-SQLkadar aygıtlarım için set seçenek deyimleri döndürülür set STATISTICS xml toplu tek ifadesi olması gerekmez olduğunu unutmayın.

set STATISTICS xml çıktı olarak verir nvarchar(max)uygulamaları gibi sqlcmdnerede xml çıktısı daha sonra diğer araçlar tarafından görüntülemek ve sorgu planı bilgileri işlemek için kullanılan bir yardımcı program,.

set STATISTICS xml bilgi kümesi xml belgeleri olarak verir. Her deyimi sonra set STATISTICS xml on deyimini çıktıda tarafından tek bir belgede yansıtılır. Her belge deyimi yürütme adımları ayrıntılarını tarafından takip, metin içeriyor. Maliyetleri, erişilen dizinleri ve tür işlemler gerçekleştiren sipariş, bir fiziksel işlem gerçekleştirilir, kaç kez satır üretilen her fiziksel bir işleci ve daha fazla katılmak gibi çıktı çalışma zamanı bilgileri gösterir.

set STATISTICS xml tarafından xml çıktısı olan Microsoft bilgisayardaki yerel bir dizine kurulum sırasında kopyalanır için xml şemasını içeren belgeyi SQL Serveryüklenir. Sürücüyü içeren bulunabilir SQL Serveryükleme dosyaları, at:

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

Showplan şema Ayrıca can be found at Bu siteyi.

set STATISTICS PROFILE ve set STATISTICS xml karşıtları birbirine vardır. Eski metinsel bir çıktı üretir; ikinci xml çıktı oluşturur. Gelecekteki sürümlerinde SQL Server, yeni sorgu yürütme planı bilgileri set STATISTICS xml deyimini, değil set STATISTICS PROFILE deyimi yalnızca görüntülenir.

[!NOT]

Eğer Fiili yürütme planı dahil seçilen SQL Server Management Studio, bu set seçenek xml Showplan çıktı üretmek değil. Açık Fiili yürütme planı dahil düğme kümesi bu seçeneği kullanmadan önce.

İzinler

set STATISTICS xml kullanın ve çıktı görüntülemek için kullanıcılar aşağıdaki izinlere sahip olmalıdır:

  • Uygun izinleri yürütmek için Transact-SQLdeyimleri.

  • Tarafından başvurulan nesneleri içeren tüm veritabanları üzerinde showplan izni Transact-SQLdeyimleri.

İçin Transact-SQLnot produce STATISTICS xml deyimlerini sonuç kümesi, yalnızca yürütmek için uygun izinleri Transact-SQLdeyimleri gerekli. İçin Transact-SQLSTATISTICS xml üreten deyimleri sonuç kümeleri, hem de denetler Transact-SQLdeyimi yürütme izni ve showplan izin gerekir başarılı, ya da Transact-SQLdeyimi yürütme iptal edildi ve hiçbir Showplan bilgileri üretilir.

Örnekler

Izleyin iki deyim set STATISTICS xml biçimini göstermek için kullanılsın SQL Serverçözümler ve sorgularda dizinler kullanımını en iyi duruma getirir. İlk sorgunun where yan tümcesi dizine alınmış sütun üzerinde eşittir (=) karşılaştırma işlecini kullanır. İkinci sorgunun where yan tümcesinde LIKE işlecini kullanır. Bu SQL Serverwhere yan tümcesini koşulu karşılayan verileri bulmak için bir Kümelenmiş dizin tarama kullanılacak. Değerleri EstimateRows ve EstimatedTotalSubtreeCost niteliklerini gösteren çok daha hızlı bir şekilde işlendiği ve dizinli sorgu daha az kaynak kullanılan ilk dizinlenmiş sorgu için daha küçük.

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

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

Ayrıca bkz.

Başvuru

set showplan_text (Transact-sql)

Sqlcmd yardımcı programı