MySQL vs MySQLi Extension
Ang MySQL ay isang sikat na Relational Database Management System (RDBMS). Ito ay isang open source na DBMS na malawakang ginagamit kahit sa malalaking negosyo tulad ng Wikipedia, Google at Facebook. Ang PHP (na nangangahulugang PHP: Hypertext Preprocessor) ay isang server side scripting language, lalo na angkop para sa pagbuo ng dynamic at interactive na mga web page. Ang MySQL at MySQLi ay dalawang extension na ibinigay para sa pakikipag-ugnayan ng mga PHP application sa isang MySQL database. Ang dalawang extension na ito ay ipinatupad gamit ang PHP extension framework at ang mga ito ay nagbibigay ng API (Application Programming Interface) sa mga programmer ng PHP upang makipag-ugnayan sa MySQL database.
Ano ang MySQL Extension?
Ang MySQL Extension ay ang unang extension na ibinigay para sa pagbuo ng mga PHP application, na maaaring magamit upang makipag-ugnayan sa mga database ng MySQL. Nagbibigay ito ng procedural interface para sa mga programmer ng PHP upang makipag-ugnayan sa mga database ng MySQL. Ang extension na ito ay inilaan na gamitin lamang sa mga bersyon ng MySQL na mas luma kaysa sa bersyon 4.1.3. Kahit na ito ay magagamit sa MySQL bersyon 4.1.3 o mas bago, alinman sa mga bagong feature sa mga bersyong iyon ay hindi magiging available. Sa kasalukuyan ay walang mga aktibong development na nangyayari sa MySQL Extension at hindi ito inirerekomenda para sa mga bagong proyekto. Ang karagdagang MySQL Extension ay hindi sumusuporta sa server-side na inihanda na mga pahayag o client-side na inihanda na Mga Pahayag. Hindi rin nito sinusuportahan ang mga stored procedure o Charsets.
Ano ang MySQLi Extension?
Ang MySQLi Extension (tinatawag ding MySQL improved extension) ay ang bagong extension na ibinigay para sa pagbuo ng mga PHP application na maaaring makipag-ugnayan sa MySQL database. Ang extension na ito ay binuo para makuha ang maximum na paggamit ng mga feature na available sa MySQL bersyon 4.1.3 o mas bago. Ang MySQLi Extension ay unang isinama sa PHP bersyon 5 at kasama sa lahat ng mga susunod na bersyon. Bilang karagdagan sa pagbibigay ng procedural interface para sa PHP programmer, ang MySQLi Extension ay nagbibigay din ng object oriented na interface. Nagbibigay din ito ng suporta para sa mga pahayag na inihanda sa panig ng kliyente/server at maramihang mga pahayag. Higit pa rito, sinusuportahan nito ang mga Charset at mga nakaimbak na pamamaraan.
Ano ang pagkakaiba ng MySQL at MySQLi Extension?
Kahit na parehong MySQL Extension at MySQLi Extension ay mga extension na ibinigay para sa pagbuo ng mga PHP application na maaaring makipag-ugnayan sa MySQL database, ang MySQLi Extension ay may ilang mahahalagang pagpapahusay sa MySQL Extension. Una, inirerekomenda ang MySQL Extension na gamitin sa mga bersyon ng MySQL na mas luma sa 4.1.3, habang ang MySQLi Extension ay inirerekomenda na gamitin sa mga bersyon ng MySQL 4.1.3 o mas bago. Gayundin, ang MySQLi Extension ay isinama lamang sa PHP 5 o mas bago na mga bersyon. Ang MySQL Extension ay nagbibigay lamang ng procedural interface para sa mga programmer ng PHP, habang ang MySQLi Extension ay nagbibigay ng object oriented na interface (bilang karagdagan sa procedural interface). Higit pa rito, ang MySQLi Extension ay nagbibigay ng suporta para sa mga inihandang pahayag at maramihang mga pahayag, na hindi suportado sa MySQL Extension. Nagbibigay ang MySQLi Extension ng pinahusay na mga kakayahan sa pag-debug kung ihahambing sa MySQL Extension. Bilang karagdagan, ang MySQLi Extension ay nagbibigay ng naka-embed na suporta sa server at suporta sa transaksyon, na hindi available sa MySQL Extension. Kahit na magagamit ang MySQL Extension sa mga bersyon ng MySQL 4.1.3 o mas bago, hindi magiging available ang alinman sa mga bagong feature na kasama sa mga bersyon ng MySQL na iyon.