各位朋友下午好,我有一个储存过程在SQL分析器中执行只需2秒钟即可完成查询(输出3个表)。 当然在C#中使用SqlDataAdapter执行此存储过程Fill到我的DataSet中的时候,花费的时间非常久,长达40-50秒。不知是什么原因?C#代码:
string str = string.Format("exec AR030B_GetDataThreeTables '{0}','{1}'", deStart.Text, deEnd.Text);
             SqlConnection conn = DataOperate.getConn();
             if (conn.State == ConnectionState.Closed)
             {
                 conn.Open();
             }
             SqlDataAdapter sqlDal = new SqlDataAdapter(str, conn);
             sqlDal.SelectCommand.CommandTimeout = 0;
             
             sqlDal.TableMappings.Add("Table", "MonthSummary");
             sqlDal.TableMappings.Add("Table1", "CustSummary");
             sqlDal.TableMappings.Add("Table2", "Details");
             sqlDal.Fill(dsAR030B1);SQL存储过程是由三个select语句输出三个表