Apa perbedaab mysql dan mysqli

MYSQLI merupakan kependekan dari MYSQL Improved extension. Dimana extension ini merupakan versi perbaikan dan penambahan dari extension MYSQL sebelumnya yang umum digunakan. Extension PHP MYSQLi ini dibuat dengan tujuan untuk mendukung fitur-fitur terbaru dari MySQL server 4 ketas. Extension MySQL tidak lagi disaranakan pada PHP versi 5.5 dan penggunaannya berstatus deprecated, yang berarti bahwa mungkin akan digantikan atau dihapus pada PHP versi selanjutnya, sehingga disarankan untuk menggunakan MySQLi atau PDO.


MySQLi secara garis besar, tidak memiliki perbedaan atau tidak ada perbedaan yang mencolok antara MySQL extension dan MySQLi extension. Nama fungsinya pun sebagian besar mirip dengan apa yang telah dipelajari dari PHP extension sebelumnya, yaitu MySQL. Sebagai contoh dasar saja, yaitu membuat koneksi dengan MySQL server, fungsi yang harus kita panggil adalah mysql_connect(), sedangkan dalam MySQLi kita menggunakan fungsi mysqli_connect(). Yang berarti bahwa dengan kata lain mysql_query() menjadi mysqli_query().



Perbedaanya adalah jika di dalam extension PHP MySQL kita meletakan argumen resources di akhir fungsi, maka di dalam MySQLi argumen ini diletakan di awal. MySQLi memiliki 2 style, yaitu Procedural dan Object Oriented.

MySQLi Procedural dan Object Oriented :

PHP memberikan cara alternatif bagi para imigrasi baru yang ingin belajar MySQLi, berikut style MySQLi.


  1. Cara pertama adalah menggunakan Procedural style, Cara ini mirip dengan extension MySQL dimana kita  menggunakan fungsi-fungsi untuk mengakses database MySQL.
  2. Cara kedua adalah dengan menggunakan Object Oriented style. Dengan cara ini, kita menggunakan aturan penulisan pemrograman objek untuk berinteraksi atau berkomunikasi dengan MySQL.


Kedua style MySQLi tersebut menggunakan nama fungsi dan metode yang kurang lebih atau hampir sama dengan MySQL.

Seperti yang pernah kita bahas dalam tutorial Jenis Koneksi PHP MySQL: PDO, mysqli, dan mysql extension, penggunaan mysql extension tidak lagi direkomendasikan (deprecated). Dalam tutorial PHP MySQL kali ini, kita akan membahas perbedaan mysql extension yang “lama” dengan versi barunya, yakni mysqli. Extension mysqli juga hadir dengan 2 jenis “rasa”: procedural dan object oriented.


Perbedaan Antara mysql extension Dengan mysqli extension

Sepanjang tutorial PHP MySQL Part 4 sampai 11 di duniailkom ini, kita menggunakan extension mysql dari PHP untuk mengakses MySQL. Fungsi-fungsi yang kita pelajari tersebut (seperti fungsi mysql_connect, mysql_query, dan mysql_fetch_array) memang sudah tidak disarankan lagi, tetapi saya tetap membahasnya sebagai dasar bagi kita untuk masuk ke extension yang lebih baru: mysqli dan PDO.

Terhitung dari PHP versi 5.5, extension mysql tidak lagi disarankan penggunaannya dan berstatus deprecated, yang berarti mungkin akan dihapus pada PHP versi berikutnya. Kita disarankan untuk mulai beralih menggunakan mysqli atau PDO. Mari kita bahas tentang mysqli terlebih dahulu.

Mysqli merupakan kependekan dari MySQL Improved Extension. Seperti yang terlihat dari namanya, extension ini merupakan versi perbaikan dan penambahan dari extension mysql sebelumnya yang umum digunakan. Extension mysqli dibuat untuk mendukung fitur-fitur terbaru dari MySQL Server versi 4.1 keatas.

Secara garis besar, tidak ada perbedaan mencolok antara mysql extension dengan mysqli extension. Nama-nama fungsi didalam mysqli sebagian besar mirip dengan apa yang telah kita pelajari (extension mysql).

Sebagai contoh, untuk membuat koneksi dengan MySQL Server, di dalam mysql kita menggunakan fungsi mysql_connect(), sedangkan di dalam mysqli, kita menggunakan mysqli_connect(). Begitu juga dengan fungsi lain seperti mysql_query() menjadi mysqli_query().

Selain menambah huruf “i” di dalam nama fungsi, argumen-argumen yang dibutuhkan juga hampir mirip. Perbedaannya, jika di dalam extension mysql umumnya kita meletakkan argumen resources di akhir fungsi, maka di dalam mysqli, argumen ini diteletakkan di awal.

Sebagai contoh, di dalam mysql kita menulis:

mysql_query("SELECT * FROM mahasiswa_ilkom", $link)

Sedangkan di dalam mysqli penulisannya menjadi:

mysqli_query($link, "SELECT * FROM mahasiswa_ilkom")

Namun perbedaan paling mendasar di dalam mysqli adalah: mysqli mendukung cara penulisan object oriented programming.


Mengenal 2 jenis Mysqli Style: Procedural dan Object Oriented

Agar proses “migrasi” dari mysql ke mysqli tidak terlalu menyusahkan, PHP memberikan 2 alternatif cara penulisan mysqli.

  • Cara yang pertama adalah menggunakan procedural style. Cara ini mirip dengan extension mysql, dimana kita menggunakan fungsi-fungsi untuk mengakses database MySQL.
  • Cara kedua adalah dengan object oriented style. Dengan cara ini, kita menggunakan aturan penulisan pemrograman objek untuk berkomunikasi dengan MySQL.

Kedua jenis style pemrograman mysqli ini menggunakan nama fungsi dan method yang kurang lebih sama. Sebagai contoh, di dalam procedural style mysqli, terdapat fungsi mysqli_query(), sedangkan dalam OOP style mysqli, kita menggunakan method $mysqli->query(). Kita akan membahas lebih dalam tentang cara penggunaan 2 style ini nantinya.


Di dalam tutorial PHP MySQL kali ini kita telah membahas sekilas mengenai perbedaan extension mysql dengan extension mysqli yang lebih baru. Sesuai dengan instruksi dari manual MySQL, sebaiknya kita tidak menggunakan lagi extension mysql.

Dalam tutorial selanjutnya, kita akan mulai membahas cara penggunaan mysqli extension. Berikutnya dalam tutorial PHP MySQL duniailkom: Cara Menampilkan Data dengan mysqli PHP menggunakan procedural style.

MySQL aplikasi apa?

1. Apa itu MySQL? MySQL atau dibaca My Sequel merupakan sebuah Database Management System atau sering disingkat DBMS yang dijalankan menggunakan perintah SQL (Structured Query Language) yang populer digunakan untuk pembuatan aplikasi berbasis website.

Apakah PHPMyAdmin itu MySQL?

phpMyAdmin adalah perangkat lunak bebas yang ditulis dalam bahasa pemrograman PHP yang digunakan untuk menangani administrasi MySQL melalui website Jejaring Jagat Jembar (World Wide Web) .

Kenapa harus menggunakan MySQL?

MySQL atau my sequel merupakan salah satu software manajemen database yang populer digunakan oleh kalangan praktisi data seperti Data Scientist atau Data Engineer, karena penggunaannya sangat membantu dalam manajemen basis data relasional yang berarti data dapat berkomunikasi satu sama lain dalam satu "ruang ...

Apa bedanya MySQL dengan PHPMyAdmin?

(Perbedaan PhpMyadmin dengan MySQL serta Kemampuan MySQL menyimpan Database) – Phpmyadmin adalah hanya alat memudahkan untuk mengoperasikan database MySQL sedangkan MySQL adalah database tempat penyimpanan data.