Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Maneira mais rápida de inserir 134675 valores no banco de dados remoto


Você pode incluir em seu loop o mysql_ping() função. Esta função verifica se a conexão está aberta e, se não estiver, ela se reconecta.

Usando seu próprio exemplo, você poderia fazer algo como:
foreach($array as $value) {
    mysql_ping($dbconn);
    $sql="insert into collected values('".$value."')";
    $res=mysql_query($sql);
    //then some extra code.
}

Editar :Deve-se notar que, de acordo com a documentação, após o MySQL 5.0.14, o PHP não se reconecta automaticamente. Se você usar uma versão mais recente do MySQL, terá que colocar sua própria lógica de conexão, talvez assim (não testei):
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.
}