2016-11-17 37 views
1

我已經在azure中創建了一個運行記錄,以便按計劃的時間間隔自動執行我的sproc執行,我在執行sproc時看到超時異常。用於執行SQL過程的Azure Runbook:面臨超時問題

我已經嘗試將連接字符串中的連接超時值更改爲「0」,以使其無限期,但仍然看到相同的問題重複出現。當我執行這個存儲過程時,它幾乎不需要3分鐘,但運行簿失敗,超時異常。如果我缺少任何東西,可以有人幫助我。

運行手冊類型:PowerShell的工作流運行手冊

感謝, 馬諾。

回答

0

將連接字符串超時設置爲0只會影響連接超時,換句話說,您正在給您的過程建立與數據庫的連接的無限時間。在沒有看到您的代碼的情況下,我懷疑問題在於您的命令超時 - 您存儲的proc可能需要比默認的30s更長的時間才能完成。在執行存儲的proc之前,您應該在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()