Запрос SQL Server занимает слишком много времени? - PullRequest
1 голос
/ 23 марта 2011

У меня сложный запрос внутри хранимого процесса. В рамках самого процесса я хотел бы судить, сколько времени это займет, и выполнить RAISERROR, если я думаю, что пройден 30-секундный порог (который заставит людей делать некоторые оптимизации).

Кто-нибудь может сказать, достойный способ сделать это, все в коде TSQL?

Спасибо.

1 Ответ

3 голосов
/ 23 марта 2011

Вы можете выдать set query_governor_cost_limit перед началом потенциально дорогостоящего запроса. Однако я считаю, что это отменяет запрос до его запуска (если он оценивается как слишком длинный), а не отменяет его, когда лимит фактически достигнут.

...