Почему Оператор печати в T-SQL решил мою проблему с отчетами? - PullRequest
1 голос
/ 10 октября 2011

У меня есть сложный отчет, работающий в T-SQL, который в анализаторе запросов работал нормально, но всякий раз, когда я запускал его из Интернета, он получал тайм-аут. Поэтому я пытаюсь выяснить, что происходит, и начать отладку с помощью операторов print до и после каждого вызова. Проблема решена! Теперь веб-сайт загружает отчет быстрее, чем когда-либо, и все, что я делал, это добавлял print «1», print «2» и т. Д. Вокруг каждого ничего другого. В противном случае я не изменил строку кода. Я вынимаю те операторы печати, код снова взрывается. Из-за печатных заявлений я знаю, почему я получил ошибку. В одном из моих агрегатов было значение NULL. Я до сих пор не исправил проблему с данными. Я не понимаю, почему это решило мою проблему, какие-либо мысли?

1 Ответ

1 голос
/ 28 октября 2011

Если это длительный запрос, скорее всего, вы достигли периода ожидания, как сказал Варуукналь.

Добавление операторов печати приведет к сбросу тайм-аута, и вашему запросу будет предоставлено больше времени для возврата основного набора результатов.

Я предлагаю вам либо упростить запрос, если это возможно, на этом сайте есть много людей, которые могут вам в этом помочь, или вы можете увеличить период ожидания в своем веб-приложении, которое вызывает эту процедуру / отчет для запуска.

Если вы хотите, чтобы кто-то решил вашу проблему с агрегированным NULL, давайте посмотрим на запрос и дадим несколько советов.

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