Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

apakah ada alternatif untuk menggunakan for loop untuk menyisipkan beberapa kueri

Silakan Lihat kueri ini berharap ini akan meningkatkan kode dan kecepatan kami.

Hindari melakukan kueri SQL dalam satu lingkaran

Kesalahan umum adalah menempatkan kueri SQL di dalam satu lingkaran. Ini menghasilkan beberapa perjalanan bolak-balik ke database, dan skrip secara signifikan lebih lambat. Pada contoh di bawah, Anda dapat mengubah loop untuk membuat satu kueri SQL dan menyisipkan semua pengguna Anda sekaligus.

foreach ($userList as $user) {

  $query = 'INSERT INTO users (first_name,last_name) VALUES("' . $user['first_name'] . '", "' . $user['last_name'] . '")';

  mysql_query($query);

  }

Alih-alih menggunakan loop, Anda dapat menggabungkan data ke dalam satu kueri database.

$userData = array();

foreach ($userList as $user) {

    $userData[] = '("' . $user['first_name'] . '", "' . $user['last_name'] . '")';

}

$query = 'INSERT INTO users (first_name,last_name) VALUES' . implode(',', $userData);

mysql_query($query);


  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:@variabel vs. variabel. Apa bedanya?

  2. Bagaimana mengoptimalkan perhitungan jarak Levenshtein ini

  3. mysql export sql dump secara alfabetis, yang menyebabkan kesalahan batasan kunci asing selama impor

  4. Optimalkan panggilan data di JDBC ke JTable

  5. Bagaimana cara memasukkan catatan dengan fungsi MySQL SEKARANG () di MySQLi dengan bind_param?