我现在碰到的问题是这样的:
   我现在一个页面有50条记录,【复选框】
  当勾选50条记录之后将原本的数据库中的内容做更新,但是发现执行速度很慢,有什么方法可以快速的吗?

解决方案 »

  1.   

    慢到什么程度,是执行了50条UPDATE查询吗?SQL语句发上来,可能有必要优化一下查询语句或表结构。
      

  2.   

    要是50个一起更新,最好一次性执行,别弄50条UPDATE,那效率会很低。。
      

  3.   

    而且要为UPDATE中WHERE语句的字段做索引。
      

  4.   

    你肯定是50个SQL执行了吧?那么代码呢?
      

  5.   


    $xcc=$_POST[xc];  //xc是前面一个页面定义的check box的name 
    for($i=0;$i<count($xcc);$i++)   
    {
         $str1=implode("','",$xcc);
    $query="select '',mmcd,mfg_no,mugiopcd,mugiyymm,empl,no,(select get_depart(empl) from dual),upload_date from pda_mugn_mobile where MFG_NO||MUGIOPCD||NO||MUGIYYMM in ('".$str1."')";
    $st=$dbh->prepare("$query");
    $st->execute();
    while (list($sheet_no, $mmcd, $mfg_no,$mugiopcd,$mugiyymm,$employee_no,$no,$depart_no,$upload_date,$create_date,$creator,$update_date,$update_user,$confirm)=$st->fetch())
    {
    $query3="update pda_formback_detail set confirm='D' where mfg_no||maintain_code||no||mugiyymm='$mfg_no$mugiopcd$no$mugiyymm'"; //ORACLE 用||
    $st3=$dbh->prepare("$query3");
    $st3->execute();

    这个就是更新50条。页面是用PHP+ORACLE写的