2013-07-16 63 views
0

我有一箇舊的VB6應用程序,我不得不優化查詢運行時間。我成功地做到了這一點,但是我想添加一個字段來顯示消息,如果查詢不返回任何內容或者查詢超時。
你可以發佈一個鏈接或顯示一些可以幫助你的示例代碼嗎?我幾乎沒有VB6或ADO的經驗,所以任何幫助或方向將不勝感激。如何顯示消息如果SQL查詢返回任何內容或超時在VB6

這裏是執行查詢的代碼。

'Execute the query. 
If ADOConnect(moConn, moParms) Then 
    Set moRS = moConn.Execute(sSql) 
End If 

這是我到目前爲止所提出的。

'Test if results are null 
If IsNull(sSql) Then 
    MsgBox "null" 

感謝

+0

我想這是簡單的東西。任何檢查是否查詢超時?我們偶爾會遇到這個問題。隨着幾十萬條記錄,查詢可能需要長達3分鐘.. – bucs10us

+0

你看看ConnectionTimeout屬性:http://msdn.microsoft.com/en-us/library/windows/desktop/ms676718(v=vs .85).aspx –

+0

也許與On Error Resume Next:http://msdn.microsoft.com/en-us/library/5hsw66as%28v=vs.80%29.aspx – DarkBee

回答

1

什麼

moConn.ConnectionTimeout = 300 
If ADOConnect(moConn, moParms) Then 
    Set moRS = moConn.Execute(sSql) 
End If 

If moRS.RecordCount = 0 Then 
    MsgBox "no record" 
+0

超時消息是:如果moConn.ConnectionTime = true然後MsgBox「Query Timed Out」? – bucs10us

+0

爲什麼要顯示一條消息而不是避免超時? –

+0

如果避免超時,查詢是否會停止運行?如果查詢未完成,我希望向用戶顯示一條消息 – bucs10us

0
If moRS.EOF then 
    MsgBox "null" 
End If 

要遍歷它:

​​
相關問題