2016-11-17 3 views
1

Я создал книгу-книгу в лазурном режиме для автоматизации моего выполнения sproc в запланированном интервале, я вижу исключение таймаута, когда sproc выполняется.Azure Runbook для выполнения процедуры SQL: проблемы с таймигатором

Я попытался изменить значение тайм-аута соединения в строке подключения на «0», чтобы сделать его неопределенным, но я все еще вижу повторение той же проблемы. Когда я выполняю эту хранимую процедуру, это едва ли занимает 3 минуты, но книга работает с ошибкой тайм-аута. Может кто-то поможет мне, если я ничего не пропущу.

типа Runbook: PowerShell Workflow Runbook

Спасибо, Манодж.

ответ

0

Установка тайм-аута строки соединения на 0 влияет только на соединение таймаутом, другими словами, вы предоставляете вашему процессу бесконечное время для установления соединения с базой данных. Не видя своего кода, я подозреваю, что проблема связана с таймаутом вашей команды - ваш сохраненный процесс, скорее всего, займет больше времени, чем 30 секунд по умолчанию. Перед выполнением хранимой процедуры вы должны установить соответствующий тайм-аут в экземпляре SqlCommand:

# Create command with a 10 minute timeout 
$DatabaseCommand = New-Object System.Data.SqlClient.SqlCommand 
$DatabaseCommand.Connection = $DatabaseConnection 
$DatabaseCommand.CommandTimeout = 600 
$DatabaseCommand.CommandText = "..." 

# Execute non query 
$NonQueryResult = $DatabaseCommand.ExecuteNonQuery() 
Смежные вопросы