Memasukkan Berbilang Baris dengan Penyata Disediakan PDO
Memasukkan berbilang baris ke dalam pangkalan data menggunakan satu pernyataan yang disediakan bukan sahaja boleh tetapi juga disyorkan untuk kecekapan dan keselamatannya.
Pendekatan dengan Sisipan Tunggal Pertanyaan
Kaedah pertama melibatkan penggunaan satu pertanyaan INSERT dengan berbilang nilai:
INSERT INTO Table (col1, col2, col3) VALUES ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi') -- and so on...
Untuk melaksanakan pertanyaan ini menggunakan PDO, anda boleh mengikuti langkah berikut:
$query = "INSERT INTO Table (col1, col2, col3) VALUES (?, ?, ?), (?, ?, ?), (?, ?, ?) "; $params = array('abc', 'def', 'ghi', 'abc', 'def', 'ghi', 'abc', 'def', 'ghi'); $stmt = DB::getInstance()->prepare($query); $stmt->execute($params);
Pendekatan dengan Pertanyaan Sisipan Individu
Jika bilangan baris yang hendak disisipkan adalah terlalu besar, anda mungkin perlu melaksanakan pertanyaan sisipan individu:
$query = "INSERT INTO Table (col1, col2, col3) VALUES (".implode(',', $args).")"; $stmt = $pdo->prepare($query); foreach ($rows as $row) { $stmt->execute($row); }
Pendekatan ini memastikan setiap baris disisipkan secara berasingan, meminimumkan risiko isu semasa sisipan.
Kesimpulan
Sama ada anda menggunakan pertanyaan sisipan tunggal dengan berbilang nilai atau pertanyaan sisipan individu, pernyataan yang disediakan PDO menyediakan kaedah yang cekap dan selamat untuk memasukkan berbilang baris ke dalam pangkalan data. Memilih pendekatan yang betul bergantung pada keperluan khusus aplikasi dan pangkalan data.
Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Berbilang Baris ke dalam Pangkalan Data dengan Penyata Disediakan PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!