我用 theApp.m_Recordset->Open("select Comp_ID,Sort_ID,Adim_context,Cert_no,Adim_num,Prod_year,Prod_no,Image  from Medi_adim_details ",
_variant_t((IDispatch *)theApp.m_pConnection,true), 
adOpenStatic,adLockOptimistic,adCmdText); 好慢啊,谁能帮我一下啊

解决方案 »

  1.   

    最好把SQL语句优化一下,加上一些过滤条件,尽量把需要独去的数据减少到最少!!!
      

  2.   

    你最好把SQL语句用CString变量的方式赋给函数,折要可以动态生成SQL语句,而且也方便加入过滤条件。比如:
    CString strSQL = "select Comp_ID,Sort_ID,Adim_context,Cert_no,Adim_num,Prod_year,Prod_no,Image  from Medi_adim_details where Comp_ID > 1000";
    theApp.m_Recordset->Open(strSQL,
           _variant_t((IDispatch *)theApp.m_pConnection,true), 
           adOpenStatic,adLockOptimistic,adCmdText); 
      

  3.   

    同意Againstwind(逆风飞扬) 
    对记录多的表进行处理而不过滤是大忌。程序要处理的数据集一般不会太大,所以要做好过滤。
    另外如果要处理的数据集确实很大,应该先考虑用存储过程之类的方法在服务器端处理。