Maison  >  Article  >  développement back-end  >  数据为何为一直的插入?

数据为何为一直的插入?

WBOY
WBOYoriginal
2016-06-23 13:57:33860parcourir

从一个数据库插入到另外一个数据库,表中有80十万条数据,通过。

while($mssql_row = mssql_fetch_array($rs))  {   $MID = $mssql_row[0];  $sql = "insert into Flow01(TDM,) values ('$TDM',)";  mysql_query($sql);   } 


而被插入的表的id已经九十几万了,根本没有停一来的意思,是不是死循环了???


回复讨论(解决方案)

单是这段看不出来 全部代码贴出来看看

没看出是死循环。

单是这段看不出来 全部代码贴出来看看


前面就是连接数据库的,没有什么代码,核心代码就是这样的。

$Query=" SELECT   *  FROM t_TuNao";$rs = mssql_query($Query); while($mssql_row = mssql_fetch_array($rs))  {   $MID = $mssql_row[0];  $sql = "insert into Flow01(TDM,) values ('$TDM',)";  mysql_query($sql);   } mssql_free_result($rs);  mssql_close($mssql_conn); 

不知哪里问题啊。

同样没看出哪里死循环了,你可以用
select count(*) from t_TuNao
查看下总共有多少条记录~~

同样没看出哪里死循环了,你可以用
select count(*) from t_TuNao
查看下总共有多少条记录~~


我早查记录了哦,查出来与插入完全不相符啊。

?建????表A,B,???你的??表??一?,然後A表只有10???。
然後用你之前?的程序做插入到 B,看看是否有??。??方便定位??所在。

$MID = $mssql_row[0]; // ??有什?用的?

关注中  代码没看出为什么一直循环

?建????表A,B,???你的??表??一?,然後A表只有10???。
然後用你之前?的程序做插入到 B,看看是否有??。??方便定位??所在。

$MID = $mssql_row[0]; // ??有什?用的?


$mssql_row[0]是获取Id号,如果插入100条,1000条都没有问题。就是数据多的时候有问题。

  $sql = "insert into Flow01(TDM,) values ('$TDM',)";
下面加?log???行的$sql ,?行後看看???行的sql是什?。
file_put_contents('sql.log', $sql."\r\n", FILE_APPEND);

改成 for 就可以了,搞不懂为什么  while不行?

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn