加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

php – 在远程数据库中插入134675值的最快方法

发布时间:2020-12-11 23:53:04 所属栏目:MySql教程 来源:网络整理
导读:我有一个超过134675值的数组,我需要将它们插入我的mySQL表.我知道使用PHP和mySQL数据插入所需的所有东西.是否有一种快速方法可以让我在30-60秒内在远程服务器上插入所有这些值?因为当我使用foreach方法尝试它时,页面会超时.远程服务器不允许DB连接持续超过6

我有一个超过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.
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读