sql >> Database teknologi >  >> RDS >> Mysql

Hurtigste måde at indsætte 134675 værdier i ekstern database

Du kan inkludere mysql_ping() i din loop. fungere. Denne funktion tjekker for at sikre, at forbindelsen er åben, og hvis den ikke er det, genopretter den forbindelse.

Ved at bruge dit eget eksempel kan du gøre noget som:

foreach($array as $value) {
    mysql_ping($dbconn);
    $sql="insert into collected values('".$value."')";
    $res=mysql_query($sql);
    //then some extra code.
}

Rediger :Det skal bemærkes, at ifølge dokumenterne, efter MySQL 5.0.14, genopretter PHP ikke automatisk forbindelse. Hvis du bruger en nyere version af MySQL, bliver du nødt til at indsætte din egen forbindelseslogik, måske sådan her (jeg har ikke testet):

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.
}


  1. Hvordan vælger man første og sidste datarække fra et mysql-resultat?

  2. Hvordan sletter jeg specifikke rækker i SQLite-databasen

  3. Sådan konverteres SQL Query-resultat til PANDAS Data Structure?

  4. Gentagelse af rækker baseret på kolonneværdi i hver række