部分程序如下
private string employeeIdText;
private string BeginTimeText;BeginTimeText="2005-04-09";
EndTimeText="2005-05-09";private void bindData()
{
  DataSet ds;
  ds= SqlHelper.ExecuteDataset(connstr,"KQ_GetBrushCardDetail1",BeginTimeText,employeeIdText);
   grdDetail.DataSource = ds;
  grdDetail.DataBind();
}运行出现问题,“超时时间已到。在操作完成之前超时时间已过或服务器未响应。”
如果把其中的ds换成下面的两种方式都正常。
ds= SqlHelper.ExecuteDataset(connstr,"KQ_GetBrushCardDetail1","2005-04-09","2005-05-09");
也就是传变量不行,直接传值行。ds= SqlHelper.ExecuteDataset  (connstr,"KQ_StatisticsParsedataByDuty",1,BeginTimeText,EndTimeText);
KQ_StatisticsParsedataByDuty是另一个存贮过程和上一个基本差不多。但它就好用。在sql server中的“事件探查器”截获实际的参数和存储过程
下面两个好用的都能得到正确的结果: 
exec KQ_StatisticsParsedataByPy1 @BeginTime = NULL, @EndTime = NULL
exec sp_reset_connection
//exec KQ_StatisticsParsedataByPy1 @BeginTime = '2005-04-09', @EndTime = '2005-05-09'
exec KQ_GetBrushCardDetail1 @BeginTime = '2005-04-09', @EndTime = '2005-05-09'
Audit Logout而第一个不好用的基本得不到结果,好象没和sql server连上。
exec KQ_StatisticsParsedataByPy1 @BeginTime = NULL, @EndTime = NULL
exec sp_reset_connection
Audit Logout请各位帮我分析一下,我是哪个地方出了问题呀,我都研究了快一周了。先谢谢了。

解决方案 »

  1.   

    BeginTimeText,EndTimeText检查这两个变量,在你执行数据库操作前是否被重新赋值了?
      

  2.   

    KQ_GetBrushCardDetail1应该是这个存储过程执行时间太长了,增加Command&connect的时间
      

  3.   

    设置命令超时时间。 Command.ConnectionTime 属性的值
      

  4.   

    哪请问我用的是 SqlHelper控件。Command.ConnectionTime 这个加到哪里呀!!!
    能否给个例子。谢谢。
      

  5.   

    Command.ConnectionTime =0加到执行你的存储过程的前面
      

  6.   

    private void bindData()
    {
      DataSet ds;
      ds= SqlHelper.ExecuteDataset(connstr,"KQ_GetBrushCardDetail1",BeginTimeText,employeeIdText);
       grdDetail.DataSource = ds;
      grdDetail.DataBind();
    }
    在这里怎么加呀!!!
      

  7.   

    根据你的代码看,好象要加在 SQLHelper 的 ExecuteDataset 方法里了
      

  8.   

    还有就是存储过程的参数不能是 NULL 值
      

  9.   

    加在SQLHelper 的 ExecuteDataset 方法里,怎么加呀!存储过程的参数可是是 NULL 值的,我有两个存储过程传Null值都好用呀!!