Mysql
 sql >> база данни >  >> RDS >> Mysql

Редизайн на кода на приложението за намаляване на бр. на посещенията в базата данни от гледна точка на ефективността

във вашия цикъл while само изградете низ на заявка и изпълнете оператора извън цикъл. Така че нещо подобно трябва да работи (не съм сигурен за синтаксиса, тъй като писах php отдавна, но трябва да работи:

public function initiateInserts()
{
    //Open Large CSV File(min 100K rows) for parsing.
    $this->fin = fopen($file,'r') or die('Cannot open file');

    //Parsing Large CSV file to get data and initiate insertion into schema.
    $query = "";
    while (($data=fgetcsv($this->fin,5000,";"))!==FALSE)
    {
        $query = $query . "INSERT INTO dt_table (id, code, connectid, connectcode) 
                 VALUES (" . $data[0] . ", " . $data[1] . ", " . $data[2] . ", " . $data[3] . ")";
    }
     $stmt = $this->prepare($query);
     // Execute the statement
     $stmt->execute();
     $this->checkForErrors($stmt);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL REPLACE INTO на няколко клавиша?

  2. PDO PHP - Намиране на всички редове между 2 дати - показва празно

  3. Mysqli_fetch_assoc($result), показалецът се премества към следващия запис. Има ли някакъв начин да нулирате показалеца към началото на резултата от заявката?

  4. Mysql - Изберете, че не използвате индекс

  5. Multi_Curl със стойности от колоната на mysql