Главная » Microsoft SQL Server, Базы данных » Использование Transact-SQL

0

SQL Server предлагает несколько средств исследования данных производительности с помощью T-SQL.

Использование динамических представлений управления

Динамические представления управления позволяют оценить текущее внутреннее состояние SQL Server и могут предоставить пользователю массу информации, большая часть которой исключительно полезна для оптимизации.

В частности, sysdm_exec__cached_j?lans, sysdm_exec_query_stats, sysdm_exec_ query_jplan () и sysdm_exec_requests предоставляют разнообразную информацию о текущих процессах.

Использование функции GetDate О

Вычисление длительности выполнения хранимой процедуры в Т-SQL является тривиальной задачей и исключительно полезна для регистрации информации о производительности. Установка переменной datetime в результат функции GetDate () в начале процедуры является решением этой задачи:

CREATE PROC PerfTest AS

SET NoCOunt ON DECLARE @Duration DATETIME SET @Duration = GetDateO — Программа

SET @Duration = GetDateO – @Duration

INSERT PerfLog (ProcName, ExecDateTime, Duration)

VALUES(‘PerfTest’, GetDateO, @Duration)

RETURN

Использование статистики

SQL Server также способен интерактивно предоставлять статистику при выполнении отдельных запросов в утилите Management Studio. Установка статистики в состояние on указывает серверу передавать статистику о времени выполнения запросов или операций ввода- вывода вместе с результатами запросов.

USE OBXKites

Set statistics io on

SELECT LastName + 1 1 + FirstName as Customer, Product.[Name],

Product.code

FROM dbo.Contact JOIN dbo.[Order]

ON Contact.ContactID = [Order].ContactID JOIN dbo.OrderDetail

ON [Order].OrderlD = OrderDetail.OrderlD JOIN dbo.Product

ON OrderDetail.ProductID = Product.ProductID WHERE Product.Code = ’10 02′

ORDER BY LastName, FirstName

Set statistics io off Set statistics time on

SELECT LastName + ‘ ‘ + FirstName as Customer FROM dbo.Contact ORDER BY LastName, FirstName Set statistics time off go

Set showplan_all on go

SELECT LastName FROM dbo.Contact

go

Set showplan_all off go

Set showplan_xml on go

SELECT LastName FROM dbo.Contact

go

Set showplan_xml off go

Источник: Нильсен, Пол. Microsoft SQL Server 2005. Библия пользователя. : Пер. с англ. — М. : ООО “И.Д. Вильямс”, 2008. — 1232 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии