sql >> データベース >  >> RDS >> Mysql

リモートデータベースに134675の値を挿入する最速の方法

    ループに 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.
    }
    


    1. PostgresまたはCouchDBでの全文検索?

    2. PHPエラー:非オブジェクトのメンバー関数rowCount()を呼び出す

    3. SQLデータベースからの単純ランダムサンプル

    4. SQLiteデータベースを復元する