我再sqlserver写了个存储过程,在数据执行存储过程,1s不到就出结果了,但是在后台,
sqladapter.fill(ds,"tablename");就会超时..然后我设了个超时时间,差不多执行了7分钟才出来...这个是我写的存储过程的原因么?dataset

解决方案 »

  1.   

    fill不至于这么慢
    你数据有多少条?
      

  2.   

    除了执行过程要时间,连接数据库,读取数据再fill到dt都需要时间
    你用sql server profiler跟踪一下看看
      

  3.   

    数据不多,我自己写了2个函数,一个spilt函数,返回table,还有一个就是获取返回table的值,问题是不是处在split呢?需要spilt处理的字段长度为100,格式是0,0,1,0,1,0,1,1,0,1....这样的,连接数据库到读取数据,就1s的样子,然后就死在了fill这里
      

  4.   

    SqlDataAdapter sqlAdapter = JImportData.JGetDataAdapter("exec Export_qxedjkfjhz " + sql);
    sqlAdapter.Fill(ds, "Export_qxedjkfjhz");
    ..代码就这两句额,
    sql的split就不贴了吧 跟网上的大同小异,从split函数获取值的方法,ALTER function [dbo].[GetResult](@csqxzdid varchar(2000))
    returns   int
    as   
    begin  
    declare   @re   int   
    set   @re=0 
    select @re=result
    from
    (
    select SUM(convert(int,a)) as result from f_split(@csqxzdid ,',')
    )areturn @re
    end