【发布时间】:2011-06-02 20:38:29
【问题描述】:
我正在使用ExcuteReader() 命令执行存储过程。如果我在 SQL Server 中执行存储过程,则需要 2 秒。但是在代码中采用2 mins。我试过 DataAdapter.Fill()。还是一样。
代码有什么问题?
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 中运行良好。