在使用PowerShell寫批次時,用到SqlDataAdapter的Fill時,常會遇到timeout的情況,如:
$ds= new-object "System.Data.DataSet" "ds"
$adapter = new-object "System.Data.SqlClient.SqlDataAdapter"
$adapter.SelectCommand = new-object "System.Data.SqlClient.SqlCommand" ($sql, $conn);
if ($adapter2.Fill($dstoprank) -gt 0) #在這裡會出現timeout error
解決方案:
myAdapter.SelectCommand.CommandTimeout = int.MaxValue; //(.Net)
or
$adapter.SelectCommand.CommandTimeout = 2147483647; # int.MaxValue (PowerShell)
沒有留言:
張貼留言