我想知道我們是否可以超時一個SQL查詢。超時查詢
從這個意義上說,假設我有一個sql查詢的輸出是有用的,只有在10分鐘內給出輸出後,即使它輸出結果對我沒用。
我想要做的是,如果查詢花費超過10分鐘來處理,那麼它應該只是自殺。
有沒有可能的方法呢?
一個例子會很有幫助。
讓我知道,如果我的想法是不是難以理解..
我想知道我們是否可以超時一個SQL查詢。超時查詢
從這個意義上說,假設我有一個sql查詢的輸出是有用的,只有在10分鐘內給出輸出後,即使它輸出結果對我沒用。
我想要做的是,如果查詢花費超過10分鐘來處理,那麼它應該只是自殺。
有沒有可能的方法呢?
一個例子會很有幫助。
讓我知道,如果我的想法是不是難以理解..
下面是它會是什麼樣子的SqlCommand.CommandTimeout
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "SELECT blah FROM Categories ORDER BY CategoryID";
cmd.CommandTimeout = 600; // 10 minutes = 600 seconds
// Caveat: it you need a timeout value of more than 30 - 60 seconds
// perhaps time to look at why it takes so long...
您可以將Command
對象的CommandTimout
屬性設置爲10分鐘。當命令超時時,SQL Server會注意到連接被刪除並取消查詢。
可以舉一個例子..會有很多幫助 – Egalitarian 2010-10-18 08:44:26
如果查詢需要10分鐘,則(a)你有一個非常大的數據庫,(b)您有所有查詢的母親(不太可能) ,或者(c)您需要重新評估您的索引。我的錢是在(c) – 2010-10-18 08:39:54
10分鐘只是一個隨機值我拿了例如..你可以想到的任何時間 – Egalitarian 2010-10-18 08:42:49
如果一個查詢需要超過30秒,我會看着它... – 2010-10-18 08:46:02