我有一个超过134675值的数组,我需要将它们插入我的MysqL表.我知道使用PHP和MysqL数据插入所需的所有东西.是否有一种快速方法可以让我在30-60秒内在远程服务器上插入所有这些值?因为当我使用foreach方法尝试它时,页面会超时.远程服务器不允许DB连接持续超过60秒.我不知道为什么.所以请帮助我快速逻辑.
这是我试过的一些代码:
foreach($array as $value){ $sql="insert into collected values('".$value."')"; $res=MysqL_query($sql); //then some extra code.}
注意
我在服务器上没有这么多的访问权限.我的数据库帐户只能插入值,只能插入值.它对MysqL DB的约束.我不能使用CSV或任何其他东西.最佳答案您可以在循环中包含mysql_ping()
函数.此功能检查以确保连接已打开,如果不是,则重新连接.
使用您自己的示例,您可以执行以下 *** 作:
foreach($array as $value) { MysqL_Ping($dbconn); $sql="insert into collected values('".$value."')"; $res=MysqL_query($sql); //then some extra code.}
编辑:应该注意的是,根据文档,在MysqL 5.0.14之后,PHP不会自动重新连接.如果你使用更新版本的MysqL,你将不得不放入自己的连接逻辑,也许这样(我还没有测试过):
function check_dbconn($connection) { if (!MysqL_Ping($connection)) { MysqL_close($connection); $connection = MysqL_connect('server','username','password'); MysqL_select_db('db',$connection); } return $connection;}foreach($array as $value) { $dbconn = check_dbconn($dbconn); $sql="insert into collected values('".$value."')"; $res=MysqL_query($sql,$dbconn); //then some extra code.}
总结 以上是内存溢出为你收集整理的php – 在远程数据库中插入134675值的最快方法全部内容,希望文章能够帮你解决php – 在远程数据库中插入134675值的最快方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)