MySQL vs MySQLi cuando se usa PHP [cerrado]

Resuelto Anand asked hace 54 años • 6 respuestas

¿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.

Anand avatar Jan 01 '70 08:01 Anand
Aceptado

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.
Mark Davidson avatar Feb 14 '2009 11:02 Mark Davidson

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/
Gordon avatar Jan 17 '2012 08:01 Gordon