Как установить параметры sql запроса в management studio? #727991


#0 by break
Отловил я долгий запрос в профайлере, вывел текст запроса в ms и хочу его выполнить, чтоб посмотреть план, естественно наскоком он не выполняется, т.к. не определены параметры @P (Необходимо объявить скалярную переменную "@P1"). Как их объявить?
#1 by Apokalipsec
прописываешь его явно. Определение параметров после текста запроса в профайлере
#2 by break
пример можно
#3 by ДенисЧ
"естественно наскоком он не выполняется" Это не естественно. Профайлер показывает полный запрос. С определениями
#4 by break
вот выловил простой запрос и пытаюсь его выполнить SELECT T1._IDRRef FROM _Reference4327 T1 WITH(NOLOCK) WHERE T1._Code = ', N' numeric',10701' при выполнении пишет "Сообщение 137, уровень 15, состояние 2, строка 4 Необходимо объявить скалярную переменную ""."
#5 by Ёпрст
ну, смотри выше, там есть определени и значение для р1
#6 by ДенисЧ
правильно отловленный начинается с sp_executesql...
#7 by break
о спасибо, с sp_executesql...выполнилось
#8 by break
при использовании временных таблиц фокус не прокатывает :(
#9 by ДенисЧ
Прокатывает. Только нужно больше одного запроса ловить
#10 by break
вообщем смысл был в том чтобы отлавливать тяжелые запросы профайлером не сильно его нагружая, если включить сбор планов (ShowplanXMLStatisticsProfile) то данные сыплются так что сервер захлебывается. А как еще настроить так, чтобы отлавливать планы только тех запросов у которых дюратоион больше определенного значения уже не знаю..
#11 by break
да но они не попадают из фильтра по продолжительности выполнения
#12 by break
в смысле тянуть к тяжелым запросам их планы
#13 by Maxus43
ЦУП настроить может?
#14 by Maxus43
да и ShowplanXML - предварительный план, может отличаться от реального
#15 by Серго62
Скалярную переменную можно определить так: declare int set = 1 далее пойдет твой запрос, например: select as P1 -- проверка результата
#16 by Серго62
+ перед Р1 должен стоять символ @, куда-то он пропал...
#17 by break
не хотелось в такие дебри лезть, тогда уж просто ТЖ настроить, но полученный там текстовый план лучше не видеть
#18 by Maxus43
по duration разве профайлер не настраивается? вкрайняк потом после сбора можно из всех данных отобрать
#19 by break
а какое тогда событие покажет действительный план?
#20 by break
в смысле duration на ShowplanXMLStatisticsProfile?
#21 by Maxus43
не, duration на событие, показывающее сам запрос, его завершение. Нет под рукой профайлера, но емнип можно была настроить на продолжительность, не уверен.
#22 by break
RPC:Completed - показывает запрос, он у меня и так настроен
#23 by Maxus43
там же duration в каком-то событии пишется, фильтровать можно по любому столбцу. Я могу ошибаться, не помню точно. По продолжительности обычно ТЖ и цуп юзают
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С