2014-01-20 2 views
5

Я поддерживаю веб-приложение IIS, которое строит и отправляет операторы SELECT в SQL Server. Иногда утверждения не очень эффективны или против довольно больших таблиц, поэтому они выполняются через три или четыре минуты при запуске из SQL Management Studio. Когда заявления передаются из приложения, следующий тайм-аут сообщил им:ОШИБКА [HYT00] [Microsoft] [драйвер SQL Server ODBC] Истекло время ожидания ожидания SQL - какой тайм-аут это?

ОШИБКА [HYT00] [Microsoft] [ODBC SQL Server Driver] Время ожидания истекло SQL: SELECT ... большое заявление здесь ...

Невозможно (сразу) улучшить отправленные SQL-запросы, поэтому мне нужно временно увеличить время простоя. Но я не могу найти тайм-аут, соответствующий этому сообщению об ошибке. Я надеюсь, что кто-то здесь может сказать мне, в какой тайм-аут он относится и где его можно просмотреть/изменить?

+0

Проверить этот пост, для этого пользователя было окно обновляется Windows Defender, который был разорвать его http://social.technet.microsoft.com/Forums/systemcenter/en -US/eaa4ba6d-930E-470c-a84b-b44afeb9a677/ODBC-SQL-сервер-водитель-Тайм-аут истек? форум = configmgrsum –

ответ

1

Вы можете изменить строку подключения и добавить Timeout = [секунды] в строку подключения Connection String MSDN.

Помните, что HTTP-запрос также может зайти слишком далеко, поэтому убедитесь, что ваш SQL не более того. Тогда есть пользователь, очень раздражающий фактор ;-) эта реализация также может отвлечь вас от интереса к вашему сайту.

лучше исправить проблему, разделив таблицу на несколько файлов на диске и добавить CPU или Ram. Одной вещью, которая также помогает, является запрос к представлению с тем же именем, что и таблица, и удалению доступа к таблице. например, вы можете настроить доступ в том месте, где вы не меняете код приложения.

Есть много вещей, которые мы делаем DBA для исправления ошибок программиста, упомянутый метод инкапсуляции является лишь одним из многих вариантов.

Надеется, что это помогает

Walter

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