4
我正在使用ExcuteReader()
命令執行存儲過程。如果我在SQL服務器中執行存儲過程,則需要2秒。但在代碼約2 mins
。我試過DataAdapter.Fill()。還是一樣。ExecuteReader需要時間,而不是SQL服務器?
代碼有什麼問題?
spString = "usp_graph"
sqlcmd_q.Connection = sqlCnn
sqlcmd_q.CommandText = spString
sqlcmd_q.CommandType = CommandType.StoredProcedure
sqlcmd_q.Parameters.AddWithValue("@clientid", clientId)
sqlcmd_q.Parameters.AddWithValue("@store", storeID)
sqlcmd_q.Parameters.AddWithValue("@attributes", attributeNumber)
sqlcmd_q.Parameters.AddWithValue("@attri1_idx", attribute1_idx)sqlCnn.Open()
sqlcmd_q.CommandTimeout = 300
sqldr = sqlcmd_q.ExecuteReader() // taking time here
dt.Load(sqldr)
dsGrid.Tables.Add(dt)
你在存儲過程中做了什麼像'set dateformat'嗎?我遇到過一個'set dateformat'的存儲過程,會放慢速度,但當查詢被緩存時,它將在SSMS中正常運行。 – Ciaran 2011-06-02 20:43:40