当用SqlDataAdapter执行SQL语句,抽出数据时,如何进行错误处理。例如:string strsql="exec proce"   //执行一个存储过程
      SqlDataAdapter da=new SqlDataAdapter();
      SqlConnection sqlcon=new SqlConnection(str)//str 是连接数据库的字符串      da=new SqlDataAdapter(strsql,sqlcon)      da.Fill(dataset,"hao")
请问,当存储过程运行时间很长时,就会发生问题,错误提示:系统错误。
如何解决有存储过程带来的运行时间长的问题,可否写代码,使其超出后,加返回值。

解决方案 »

  1.   

    da.SelectCommand.Timeout = 0;
      

  2.   

    题目重新修正,我经过测试,主要的时间在这句里:
          da.Fill(dataset,"hao")
    这句占用的时间最长,估计存储过程在这句代码里执行。
    我用try...catch...   获取系统提示信息,这句执行时间大约是30-40秒之间,超过40秒系统就会终止程序,提示:因为数据库没有响应,中断。
    请问,如何,延长时间呢?
      

  3.   

    是da.SelectCommand.CommandTimeout,敲错了
      

  4.   

    建议考分割PROC中的逻辑,通常这么长的时间都是不应该出现的;