Могу ли я глобально "SET NOCOUNT ON" в TSQL для запроса? - PullRequest
5 голосов
/ 08 февраля 2012

Существует хранимая процедура, которую мы пытаемся повысить производительность ... на данный момент мы ищем ненавязчивые "исправления".

Этот sproc вызывается около 500 000 раз в день, и он может вызывать до 50 других хранимых процедур, описанных ниже. - НЕ СПРОСИТЬ

Пожалуйста, не поддавайтесь желанию спросить: «О Боже, почему !?» вопросы - но просто ответьте на этот вопрос, если можете:)

Есть ли путь к SET NOCOUNT ON на вершине одного из звездочек, и он распространяется вниз на все звездочки и операторы ниже?

РЕДАКТИРОВАТЬ: Судя по первым двум ответам ниже - это заставляет меня спросить ... есть ли способ установить «опцию пользователя» в строке подключения или что-то так, чтобы он работал для одного «пользователя»? - любой «секретный совет», подобный этому, был бы великолепен.

Ответы [ 3 ]

4 голосов
/ 08 февраля 2012

Краткий ответ: нет, это невозможно распространить.Вы должны явно сказать:

SET NOCOUNT ON

Глобальные изменения могут быть сделаны на основе ответа @ user92546, но я всегда немного осторожен в отношении глобальных изменений.В ту минуту, когда вам это нужно, вы понимаете, что глобальные изменения были сделаны ... Действуйте с осторожностью:).

2 голосов
/ 08 февраля 2012

Область действия SET NOCOUNT ON относится только к текущему объекту.Там нет никакого способа расширить сферу за это.

2 голосов
/ 08 февраля 2012
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...