Commands Out of Sync Error Di CodeIgniter

Sempet dibuat bingung ketika timbul error di codeigniter seperti tampak pada gambar dibawah,

error_db_sp

Error yang penulis temukan ketika penulis sedang membangun aplikasi pengolahan nilai siswa untuk salah satu client, mungkin sebagian dari anda jarang atau belum pernah menemukan error seperti yang penulis alami, lantas kapan error tersebut bisa keluar ??, berikut kondisi CodeIgniter yang akan menyebabkan error seperti yang penulis alami.

  1. Database driver menggunakan mysqli
  2. Menjalankan stored procedure di database mysql
  3. Kemudian menjalankan query lain misal select, update atau delete

Berikut adalah salah satu function yang penulis buat untuk menjalankan salah satu stored procedure di MySQL

sp_nilai_1

Kemudian bagaimana solusinya ??, solusinya adalah dengan menambahkan perintah

mysqli_next_result( $this->db->conn_id );

Pada baris setelah pemanggilan stored procedure, sehingga function diatas berubah menjadi seperti berikut (perhatikan baris 43) :

sp_nilai_2

Setelah menambahkan baris tersebut, aplikasi berjalan normal dan error kembali hilang.

Lalu apa penyebabnya ? penyebabnya karena terjadi perintah query yang simultan sebagai akibat adanya stored procedure, seperti kita ketahui didalam stored procedure biasanya kita menjalankan lebih dari satu  perintah query dalam satu kali menjalankan stored proceure, ketika stored procedure sedang berjalan maka kita tidak dapat memberikan perintah query lain, jika dipaksakan maka akan keluar error seperti itu.

Sekian semoga membantu

Post a Comment

Previous Post Next Post