Tutorial PHP : menggunakan mysqli_multi_query() untuk mengeluarkan data dari database

Tutorial PHP : menggunakan mysqli_multi_query() untuk mengeluarkan data dari database

Assalamu alaikum wr wb.

Apa kabar kawan kawan, sudah lama rasanya saya tidak posting lagi di blog ini. Yah maklum lah ada banyak kesibukan yang harus saya lakukan hehehe.

Humm, kali ini saya akan berbagi tutorial bahasa pemrograman php dan mysqli khususnya tentang bagaimana menggunakan fitur mysqli_multi_query().

Fungsi ini digunakan apabila kita memiliki beberapa query yang ingin dieksekusi bersamaan, misalnya kita punya 3 query untuk menampilkan data dari 3 tabel berbeda.

Sebenarnya kita bisa saja menggunakan fungsi mysqli_query() saja sebanyak apapun query yang dieksekusi. Namun tentu hal tersebut bukanlah hal yang efisien. Karena dari segi penggunaan memori akan lebih efisien(lebih sedikit) jika menggunakan perintah mysqli_multi_query() jika dibandingkan dengan mysqli_query().

Mungkin teman-teman berfikir mungkin perbedaan penggunaan memorinya tidak terlalu beda jauh. Yah memang jika datanya sedikit, tapi coba bayangkan jika data yang dieksekusi ada banyak ribuan misalkan. Butuh berapa lama waktu untuk mengeksekusinya tentu akan terlihat perbedaan yang cukup signifikan.

Perlu diketahui untuk penggunaan perintah multi_query() terdapat beberapa fungsi yang biasanya mengikut pada perintah mysqli_multi_query() ini, yaitu :

mysqli_store_result()
mysqli_free_result()
mysqli_more_results()
mysqli_next_result()



ok langsung saja berikut ini adalah contoh codingnya :

<?php
$koneksi = mysqli_connect('localhost','root','','db_belajar');
if (mysqli_connect_errno()) {
echo "koneksi gagal ".mysqli_connect_error();
exit();
}
/*
anggaplah kita memiliki sebuah database bernama db_belajar
serta 3 buah tabel bernama 'tb_user','buku' dan sekolah.
*/
$query = "SELECT nama,username FROM tb_user ;";
$query .= "SELECT judul,penerbit FROM buku ;";
$query .= "SELECT nama,kelas FROM sekolah ";
$data  = mysqli_multi_query($koneksi, $query)or die(mysqli_error($koneksi));
do {
$simpan = mysqli_store_result($koneksi, $data);
while ($row = mysqli_fetch_row($simpan)) {
echo $row[0]."<br/>";
echo $row[1]."<br/>";
}
mysqli_free_result($simpan);
if (mysqli_more_results($koneksi)) {
echo "<br/>";
}
} while (mysqli_next_result($koneksi));
?>

Bisa juga untuk mengeluarkan data menggunakan sintaks berikut :

<?php
do {
$simpan =mysqli_store_result($koneksi,$data);
while ($row = mysqli_fetch_array($simpan)) {
foreach ($row as $key) {
echo $key."</br>";
}
}
mysqli_free_result($simpan);
echo "</br>";
} while (mysqli_more_results($koneksi) && mysqli_next_result($koneksi));
?>

Mudah bukan, silahkan pilih mana syntaks yang paling mudah anda pahami.
Sekian dari saya Wassalamu Alaikum Wr Wb.
Back To Top