我有一個存儲過程,當直接對數據庫執行時需要1秒運行。它返回46行數據。SQL Azure存儲過程超時問題
存儲過程在我的網站代碼中執行並返回數據以創建報告。
這與本地的預期完全一致,需要很短的時間(1/2秒)來加載報告。首次部署網站時,報告按預期工作。
但是,經過一段時間(大約半小時)之後,報告無法加載,因爲存儲過程超時。
爲了解決這個問題,如果我放棄並創建過程,它將重新開始工作,但這顯然不是解決我的問題的方法。
的存儲過程調用這樣的代碼:
DataSet content = new DataSet();
Database db = DatabaseFactory.CreateDatabase();
DbCommand cmdSearchQuestionLibrary = db.GetStoredProcCommand("SP_NAME");
db.AddInParameter(cmdSearchQuestionLibrary, "@Param1", DbType.Int64, Id);
db.AddInParameter(cmdSearchQuestionLibrary, "@StartDate", DbType.DateTime, dtStartDate);
db.AddInParameter(cmdSearchQuestionLibrary, "@EndDate", DbType.DateTime, dtEndDate);
content = db.ExecuteDataSet(cmdSearchQuestionLibrary);
有沒有人經歷過這個?或者知道可能會導致問題的原因是什麼?
嘗試重新編譯運行中的SP。這可能會縮小問題的範圍。 [見這裏](http://blog.sqlauthority.com/2010/02/20/sql-server-recompile-stored-procedure-at-run-time/) –