MySQL vs MySQLi cuando se usa PHP [cerrado]
¿Cuál es mejor, MySQL o MySQLi? ¿Y por qué? ¿Cuál debo usar?
Me refiero a mejor no sólo en términos de rendimiento, sino también en cualquier otra característica relevante.
Si echa un vistazo a Descripción general de la extensión mejorada de MySQL , debería decirle todo lo que necesita saber sobre las diferencias entre los dos.
Las principales características útiles son:
- una interfaz orientada a objetos
- soporte para declaraciones preparadas
- soporte para múltiples declaraciones
- soporte para transacciones
- capacidades de depuración mejoradas
- soporte de servidor integrado.
Hay una página de manual dedicada a ayudar a elegir entre mysql, mysqli y PDO en
- http://php.net/manual/en/mysqlinfo.api.choosing.php y
- http://www.php.net/manual/en/mysqlinfo.library.choosing.php
El equipo de PHP recomienda mysqli o PDO_MySQL para nuevos desarrollos:
Se recomienda utilizar las extensiones mysqli o PDO_MySQL. No se recomienda utilizar la antigua extensión mysql para nuevos desarrollos. A continuación se proporciona una matriz de comparación de características detallada. Se considera que el rendimiento general de las tres extensiones es aproximadamente el mismo. Aunque el rendimiento de la extensión contribuye sólo con una fracción del tiempo total de ejecución de una solicitud web PHP. A menudo, el impacto es tan bajo como el 0,1%.
La página también tiene una matriz de características que compara las API de extensión. Las principales diferencias entre mysqli y mysql API son las siguientes:
mysqli mysql
Development Status Active Maintenance only
Lifecycle Active Long Term Deprecation Announced*
Recommended Yes No
OOP API Yes No
Asynchronous Queries Yes No
Server-Side Prep. Statements Yes No
Stored Procedures Yes No
Multiple Statements Yes No
Transactions Yes No
MySQL 5.1+ functionality Yes No
* http://news.php.net/php.internals/53799
Hay una matriz de características adicional que compara las bibliotecas (nueva mysqlnd versus libmysql) en
- http://www.php.net/manual/en/mysqlinfo.library.choosing.php
y un artículo de blog muy completo en
- http://blog.ulf-wendel.de/2012/php-mysql-why-to-upgrade-extmysql/