Sisip Pukal menggunakan Kelas Model CodeIgniter
Memasukkan sejumlah besar data ke dalam pangkalan data boleh menjadi proses yang memakan masa. Secara tradisinya, satu pendekatan melibatkan pelaksanaan satu siri arahan sisipan individu, yang boleh menjadi tidak cekap dan intensif sumber.
Untuk mengoptimumkan proses ini, anda boleh memasukkan berbilang baris sekaligus menggunakan satu pertanyaan. Dalam CodeIgniter, ini boleh dicapai menggunakan kelas Model.
Membina Pertanyaan
Kunci untuk memasukkan berbilang baris dengan satu pertanyaan terletak pada memasang pernyataan SQL dengan betul . Daripada menambahkan setiap nilai pada rentetan panjang, anda boleh menggunakan tugasan tatasusunan dan fungsi meletup.
$data = [ ['text' => 'foo', 'category_id' => 1], ['text' => 'bar', 'category_id' => 2], // ... ]; $sql = []; foreach ($data as $row) { $sql[] = '("' . mysql_real_escape_string($row['text']) . '", ' . $row['category_id'] . ')'; } $sql = implode(',', $sql);
Melaksanakan Pertanyaan
Setelah penyataan SQL dibina , anda boleh melaksanakannya menggunakan pertanyaan kelas Model kaedah:
$this->db->query('INSERT INTO table (text, category_id) VALUES ' . $sql);
Faedah Sisipan Pukal
Menggunakan teknik sisipan pukal menawarkan beberapa kelebihan:
Atas ialah kandungan terperinci Bagaimanakah Kelas Model CodeIgniter Boleh Mengoptimumkan Sisipan Pangkalan Data Pukal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!