我有一個存儲過程,需要5-10秒才能在SQL Server管理工作室中執行。當從C#調用時,T-SQL存儲過程超時 - 嘗試重新編譯
當這從C#調用,超時後10分鐘:
cmd.CommandTimeout = 600;
我已經使用sp_recompile重新編譯查詢,也DBCC DROPCLEANBUFFERS和DBCC FREEPROCCACHE清除任何緩存和執行計劃都無濟於事。
我已經搜索和搜索,但我只找到答案,指出我已經嘗試過以上。所以我在想,也許這是更明顯的,我失蹤了?
public static void Action_StoredProc(SqlConnection conn, Boolean map, string acc) {
SqlCommand cmd = new SqlCommand("Action_StoredProc", conn);
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Parameters.Add("@map", SqlDbType.Bit).Value = map;
cmd.Parameters.Add("@acc", SqlDbType.VarChar).Value = acc;
cmd.CommandTimeout = 600;
cmd.ExecuteNonQuery();
}
你妥善處置的SqlConnection? –
管理工作室需要5-10秒才能顯示結果,或者需要花費所有時間才能生成所有結果? –
AndrásOttó - yup @Damien_The_Unbeliever - 這是一系列更新陳述,所以沒有結果產生,但是是的,它是5-10s才能完成整個sp –