2013-12-08 5 views
0

У меня есть клиентское приложение, которое показывает мне информацию о пользователе, продукты и цены и т. Д. От SQL Server с помощью кнопок на localhost.SQL Server: какие запросы выполняются?

Например, когда я нажимаю на показательные расходы, он получает некоторую информацию.

Я хочу узнать, какая кнопка выполняет этот запрос?

Есть ли какие-либо инструкции SQL для монитора, которые выполняются приложением?

Я попытался

SELECT deqs.last_execution_time AS [Time], dest.TEXT AS [Query] 
FROM sys.dm_exec_query_stats AS deqs 
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest 
ORDER BY deqs.last_execution_time DESC 

но этот код не показывает заявления SQL от приложения.

Спасибо.

+3

Вы посмотрели на Sql Server Profiler - http://www.techrepublic.com/article/step-by-step-an-introduction-to-sql-server-profiler/ –

+2

Определенно проверьте ** SQL Server Profiler * * - это *** инструмент *** для этой работы –

+2

Конечно, если вы рассматриваете приложение как черный ящик, вы не можете быть уверены, захватив 10 (или 100, 1000 и т. д.), что при следующем запуске приложения он не будет запускать совершенно другой запрос.Единственный способ убедиться в том, что нужно изучить исходный код (и понять его) –

ответ

1

Обычно, когда вы используете Sql Server Profiler, вы получаете результаты и для других баз данных при запуске трассировки. Если на одном сервере базы данных есть другие базы данных, которые используются другими приложениями. Вы хотели бы отслеживать вещи в вашей базе данных, которую использует ваша приложение. Это может быть не для вас. Если у вас есть только одна база данных на вашем сервере базы данных - просто упоминание Если это так. Я нашел этот подход действительно полезным.

Я бы создал шаблон с вашей базой данных в качестве фильтра и использовал этот шаблон для создания трассировки.

Это как вы создаете шаблон - http://technet.microsoft.com/en-us/library/ms175070.aspx

Это, как вы отфильтровывать видеть только запросы, выполненные на базе данных: -

в свойствах шаблона трассировки> вкладка Выбор события> выберите шоу все столбцы. Теперь под фильтрами столбцов вы должны увидеть имя базы данных . Введите имя базы данных для раздела Like, и вы должны увидеть трассировки только для этой базы данных.

Вы можете видеть инструкции Sql, выполняемые приложением. У меня был профилировщик, работающий заранее. См. Пример ниже.

Пользователь вводит имя как "ashish1" в нижеприведенной форме окна: -

enter image description here

Код, который запускается на выполнение, когда пользователь нажимает на кнопку: -

enter image description here

Если вы прокрутите профайлер, вы можете увидеть инструкцию Sql, которая была отправлена ​​приложением: - enter image description here

+0

благодарю вас за помощь. Вы очень хорошо объяснили. Но не могу это сделать. Он возвращает тот же результат и не возвращает индексы sql, которые выполняются клиентским приложением. – cantas

+0

@ user2922744 - Не совсем. Вы можете увидеть оператор Sql, выполняемый приложением. См. Мой обновленный ответ выше. Также - пожалуйста, поддержите Если это вам помогло. :-) –

+0

LoginName :) Я установил логин в соответствующем разделе. Он работает – cantas

Смежные вопросы