2009-08-18 64 views
1

是否可以啓動一個查詢,這將花費大量時間並通過Ajax監視UI的進度?通過ajax開始並監控長時間運行SQL查詢的進度

我認爲開始這個過程是一個計劃立即運行的「一次運行」作業。我可以將結果存儲在臨時表中,以便在完成後快速檢索。我還可以記錄報告的運行時間,並將其平均分數,以推測進度條的運行時間。

我現在使用的是Microsoft SQL 2005,但我願意在必要時使用其他DBMS,如SQL 2008,MySQL等。

回答

0

一個想法,如果長時間運行的作業填充另一個表。

你有第二個數據庫連接監視多少行加工出來的源行的,並顯示一個簡單的「X行處理」每隔幾秒鐘

SELECT COUNT(*) FROM TargetTable WITH (NOLOCK) 

如果你有一個源表太:

SELECT COUNT(*) FROM SourceTable WITH (NOLOCK) 

..then可以用「y行的X處理」

基本上,則必須使用一個第二連接監視第一。然而,你也需要一些東西來衡量......

+0

這聽起來像是正確的想法。感謝你的回答。 – Joshua 2009-08-18 15:30:45