MySQL contra MySQL contra PDO
La extensión de MySQLi (MySQL mejorado) es un conductor de la base de datis relacional usado en el lenguaje de programación del PHP para proveer de un interfaz las bases de datos de MySQL.
MySQLi es una versión mejorada del conductor más viejo del PHP MySQL, ofreciendo varias ventajas.
Los reveladores del lenguaje de programación del PHP recomiendan usar MySQLi al ocuparse de las versiones 4.1.3 del servidor de MySQL y más nuevo (se aprovecha de nueva funcionalidad).
La extensión del mysqli se incluye con las versiones 5 del PHP y más adelante.
La extensión de MySQLi proporciona varias ventajas con respecto a su precursor, el más prominente cuyo ser:
* Un interfaz orientado al objeto
* Ayuda para las declaraciones preparadas
* Ayuda para las declaraciones múltiples
* Ayuda para las transacciones
* Ayuda realzada del depuración
* Ayuda encajada del servidor
La extensión del conductor de PDO MySQL, por ejemplo, no expone un API al programador del PHP, sino proporciona un interfaz a la capa de PDO sobre ella.
PDO proporciona un API constante para su uso del PHP sin importar el tipo de servidor de base de datos que su uso conectará con. En teoría, si usted está utilizando el PDO API, usted podría cambiar el servidor de base de datos que usted utilizó, de decir Firebird a MySQL, y necesitar solamente realizar cambios de menor importancia a su código del PHP.
Otros ejemplos de las capas de la abstracción de la base de datos incluyen JDBC para los usos de Java y DBI para el Perl.
PDO es tiene un API limpio, simple, portable, pero su desventaja principal es que no permite que usted utilice todas las características avanzadas que estén disponibles en las últimas versiones del servidor de MySQL. Por ejemplo, PDO no permite que usted utilice la ayuda de MySQL para las declaraciones múltiples.