MySQL lwn MySQLi Extension
MySQL ialah Sistem Pengurusan Pangkalan Data Perhubungan (RDBMS) yang popular. Ia adalah DBMS sumber terbuka yang digunakan secara meluas walaupun dalam perusahaan berskala besar seperti Wikipedia, Google dan Facebook. PHP (singkatan untuk PHP: Hypertext Preprocessor) ialah bahasa skrip sebelah pelayan, terutamanya sesuai untuk membangunkan halaman web yang dinamik dan interaktif. MySQL dan MySQLi adalah dua sambungan yang disediakan untuk interaksi aplikasi PHP dengan pangkalan data MySQL. Kedua-dua sambungan ini dilaksanakan menggunakan rangka kerja sambungan PHP dan ini menyediakan API (Antara Muka Pengaturcaraan Aplikasi) kepada pengaturcara PHP untuk berinteraksi dengan pangkalan data MySQL.
Apakah itu MySQL Extension?
MySQL Extension ialah sambungan pertama yang disediakan untuk membangunkan aplikasi PHP, yang boleh digunakan untuk berinteraksi dengan pangkalan data MySQL. Ini menyediakan antara muka prosedur untuk pengaturcara PHP untuk berinteraksi dengan pangkalan data MySQL. Sambungan ini bertujuan untuk digunakan hanya dengan versi MySQL yang lebih lama daripada versi 4.1.3. Walaupun ini boleh digunakan dengan MySQL versi 4.1.3 atau lebih baharu, mana-mana ciri baharu dalam versi tersebut tidak akan tersedia. Pada masa ini tiada perkembangan aktif berlaku pada MySQL Extension dan ia tidak disyorkan untuk projek baharu. Sambungan MySQL selanjutnya tidak menyokong pernyataan yang disediakan oleh pihak pelayan atau Penyata yang disediakan oleh pihak klien. Ia juga tidak menyokong prosedur tersimpan atau Charset.
Apakah itu MySQLi Extension?
MySQLi Extension (juga dikenali sebagai sambungan dipertingkatkan MySQL) ialah sambungan baharu yang disediakan untuk membangunkan aplikasi PHP yang boleh berinteraksi dengan pangkalan data MySQL. Sambungan ini dibangunkan untuk mendapatkan penggunaan maksimum ciri yang tersedia dalam MySQL versi 4.1.3 atau lebih baru. MySQLi Extension mula-mula digabungkan dengan PHP versi 5 dan disertakan dalam semua versi kemudian. Selain menyediakan antara muka prosedur untuk pengaturcara PHP, MySQLi Extension juga menyediakan antara muka berorientasikan objek. Ini juga menyediakan sokongan untuk penyata yang disediakan di sisi klien/pelayan dan berbilang kenyataan. Tambahan pula, ia menyokong Charset dan prosedur tersimpan.
Apakah perbezaan antara MySQL dan MySQLi Extension?
Walaupun kedua-dua MySQL Extension dan MySQLi Extension adalah sambungan yang disediakan untuk membangunkan aplikasi PHP yang boleh berinteraksi dengan pangkalan data MySQL, MySQLi Extension mempunyai beberapa peningkatan utama berbanding MySQL Extension. Pertama, MySQL Extension disyorkan untuk digunakan dengan versi MySQL yang lebih lama daripada 4.1.3, manakala MySQLi Extension disyorkan untuk digunakan dengan MySQL versi 4.1.3 atau lebih baru. Selain itu, MySQLi Extension hanya digabungkan dengan PHP 5 atau versi yang lebih baru. MySQL Extension hanya menyediakan antara muka prosedural untuk pengaturcara PHP, manakala MySQLi Extension menyediakan antara muka berorientasikan objek (sebagai tambahan kepada antara muka prosedur). Tambahan pula, MySQLi Extension menyediakan sokongan untuk pernyataan yang disediakan dan berbilang kenyataan, yang tidak disokong dalam MySQL Extension. MySQLi Extension menyediakan keupayaan penyahpepijatan yang lebih baik jika dibandingkan dengan MySQL Extension. Selain itu, MySQLi Extension menyediakan sokongan pelayan terbenam dan sokongan transaksi, yang tidak tersedia dalam MySQL Extension. Walaupun MySQL Extension boleh digunakan dengan MySQL versi 4.1.3 atau lebih baharu, mana-mana ciri baharu yang disertakan dengan versi MySQL tersebut tidak akan tersedia.