(php+mysql ) 请问while循环体的insert语句为什么意外终止也没有报错...

发布网友 发布时间:2024-10-01 21:09

我来回答

4个回答

热心网友 时间:5分钟前

提个建议,楼主是不是可以把去除掉'---'的字符串再拼起来,然后一次执行这个sql呢,这样的效率应该会高很多吧。
或者呢,再做更进一步的优化,把读出来的sql整理成这样(前提是你这些数据都是插入到一个表的,当然这个也可以在PHP里判断一下):
insert into table (field1, field2....) values (value1, value2...),(value1, value2...),(value1, value2...),......; 这样做以后mysql在执行的时候速度也会提升很多。

热心网友 时间:4分钟前

@mysql_query($myarray[$i]);

前面的@屏蔽了这条语句的错误,可以去掉@看看。

热心网友 时间:3分钟前

because php里面没有try catch. 不存在什么异外终止的。。。。你需要在数据库里做操作。或者在PHP里加个回滚吧。。。。

热心网友 时间:6分钟前

1楼说的对,你这个语句会先load 整个文件,然后对整个文件做数组处理,再循环全部行, 效率肯定不高,因为你至少循环了2次全部文件. 1500句估计也得有个好几MB的文件, 不算小.
你应该把执行的语句放到第一次读文件的时候就做, 每次读到-就停,然后执行这个语句,
这样效率会高一倍.

还有就是把@去掉,这个会隐藏显示错误. 在你代码最前加个error_reporting(E_ALL);会显示所有错误

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com