第一,长度是否适当,可以在插入前  substr
第二,是否 escape 掉一些  html tag 
第三,用var_dump跟踪调试。

解决方案 »

  1.   

    楼上的,我是先把t_runs里的数据取到记录集里的,并且我也实时打印出所有列的数据,都和t_runs里的数据一样这表里的数据没有html tag的var_dump跟踪调试,这个怎么弄的?代码主要如下$query1=sprintf("select * from t_runs where contest_id=7");
    $res1=mysql_query($query1, $dbh);
    while( $row1=mysql_fetch_array($res1) )
    {
        echo "comment:".$row1[5]."<br>";
        echo $row1[9]."<br>";
        echo $row1[10]."<br>";
     echo $row1[0]."&nbsp".$row1[1]."&nbsp".$row1[2]."&nbsp".$row1[3]."&nbsp".$row1[4]."&nbsp".$row1[5]."&nbsp".$row1[6]."&nbsp".$row1[7]."&nbsp".$row1[8]."&nbsp".$row1[9]."&nbsp".$row1[10]."&nbsp".$row1[11]."&nbsp".$row1[12]."<br>";$query2=sprintf("insert into t_runs_7(contest_id,user_id,prob_id,status,comment,mem,runtime,subtime,error,output,rate,source) values(".$row1[1].",".$row1[2].",".$row1[3].",".$row1[4].",".$row1[5].",".$row1[6].",".$row1[7].",".$row1[8].",".$row1[9].",".$row1[10].",".$row1[11].",".$row1[12].")"); $res2=mysql_query($query2, $dbh);

    }
      

  2.   

    insert into t_runs_7(contest_id,user_id,prob_id,status,comment,mem,runtime,subtime,error,output,rate,source) select contest_id,user_id,prob_id,status,comment,mem,runtime,subtime,error,output,rate,source from t_runs limit 10;看看这个行不行。