T-SQL: остановить запрос через определенное время - PullRequest
4 голосов
/ 05 октября 2011

Я хочу выполнить запрос в t-SQL (MS SQL SMS), который остановится через X секунд.Скажи 30 секунд.Моя цель - остановить запрос через 6 минут.Я знаю, что запрос не правильный, но хотел дать вам представление.

Select * from DB_Table
where (gatedate()+datepart(seconds,'00:00:30')) < getdate()

Ответы [ 2 ]

3 голосов
/ 05 октября 2011

В SQL Server Management Studio откройте диалоговое окно параметров (Инструменты .. Опции).Разверните до «Выполнение запроса / SQL Server / Общие».Вы должны увидеть что-то вроде этого:

enter image description here

Время ожидания выполнения - это то, что вам нужно.Значение 0 указывает бесконечный тайм-аут.Положительное значение: предел времени ожидания в секундах.

ПРИМЕЧАНИЕ. this value "- совокупное время ожидания для всех сетевых чтений во время выполнения команды или обработки результатов.out может по-прежнему возникать после возврата первой строки и не включает время обработки пользователем, только время чтения по сети. "(для MSDN).

Если вы используете ADO.Net (System.Data.SqlClient), вам нужно свойство CommandTimeout объекта SqlCommand.Глагол тайм-аута строки подключения: Connect Timeout, Connection Timeout или Timeout указывает время ожидания при установлении соединения с SQL Server.Это не имеет ничего общего с выполнением запроса.

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

Что вы будете использовать для выполнения этого запроса? Если вы создаете приложение .NET, время ожидания хранимых процедур по по умолчанию составляет 30 секунд. Вы можете изменить время ожидания на 6 минут, если хотите, изменив SqlCommand.CommandTimeout

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