1
我有一個SQL腳本,一旦表被修改就會刷新表的從屬視圖,如添加新字段。該腳本將通過ExecuteNonQuery運行,請參閱下面的示例。.Net的ExecuteNonQuery與MS SQL直接查詢
Using refreshCommand As New SqlClient.SqlCommand("EXEC RefreshDependentViews 'Customer','admin',0", SqlClient.SqlConnection, SqlClient.SqlTransaction)
refreshCommand.ExecuteNonQuery()
End Using
在被執行時將採取4-5秒,但是當我只複製腳本,並通過MS SQL直接運行,只需要2-3秒以上代碼。
我的問題是,他們爲什麼有不同的時間間隔?
請注意,MS SQL服務器是在我的電腦本身,也是代碼。
由於
確保在進行性能比較之前刷新所有緩衝區,緩存等(例如,請參閱此[問題](http://stackoverflow.com/q/564717/21567))。 –
你是如何計時的?如果您使用SQL事件探查器,您可能會發現查詢的實際執行可能匹配,並且它只是增加額外時間的應用程序代碼。 –