Vous êtes sur la page 1sur 13

Autores

Amaya Saldarriaga Yahaira


Farro Rodrguez Elva Iraida
Pere Rodrguez Anyela Jess
Curso:
Tecnologa Web I
Diferencias entre Mysql y Mysqli
Ao:

2015

AUTORES:

Amaya Saldarriaga Yahaira


Farro Rodrguez Elva Iraida
Pere Rodrguez Anyela Jess

TEMA:
Diferencias entre Mysql y Mysqli

CHIMBOTE - 2015
2

DEDICATORIA
Este trabajo se le dedico primer lugar a Dios, segundo
a mis padres por su apoyo incondicional y gran
esfuerzo que hacen por brindarme lo mejor, por
haberme permitido estar en el lugar donde estoy
ahora.
Tambin dedico a mis hermanos por apoyarme, por
sus consejos y por brindarme sus apoyo incondicional
y sus deseos de poder ser un profesional en la vida.

AGRADECIMIENTO
Agradezco de manera muy especial a Dios, a cada
uno de nuestros padres y a la Universidad Catlica los
ngeles de Chimbote por brindarnos la oportunidad de
estar

preparndonos

desarrollarnos

como

profesional

como persona en las aulas en donde

da a da adquiero mis conocimientos. Agradecemos


sinceramente

al

profesor

por

ensearnos

cosas

nuevas y corregirnos en las cosas que fallamos.


Tambin quisiramos agradecer a mis compaeros por
estarme apoyando y a la vez ensendome en
algunos conceptos para mejorar la monografia

INDICE
DEDICATORIA.................................................................................................3
AGRADECIMIENTO.......................................................................................4
INTRDUCCION................................................................................................6
DIFERENCIAS ENTRE MYSQL Y MYSQLILAS......................................7
Extensin MySQL......................................................................................7
Extensin mysqli........................................................................................7
CAPITULO I......................................................................................................8
Estructura orientada a objetos....................................................................8
Instrucciones preparadas.................................................................................8
La extensin....................................................................................................9
CAPITULO II..................................................................................................10
Gestin de bases de datos MySQL mediante MySQLi.................................10
Creacin de bases y/o acceso a bases de datos.............................................11
Conexin/desconexin al servidor de bases de datos MySQL.....................11
Estilo por procesos.....................................................................................11
Estilo orientado a objetos...........................................................................12

INTRDUCCION

El lanzamiento de la versin 5 de PHP incluy una nueva extensin


para

acceder

a bases de

datos

de MySQL llamada

MySQL

Improved, o MySQLi. Esta ofrece una mejora en el desempeo,


una estructura orientada a objetos, soporte para instrucciones
preparadas y funcionalidad adicional en forma de transacciones de
bases de datos. La extensin de MySQL actual no ser mejorada, por
ejemplo, para proporcionar soporte unicode, y eventualmente ser
eliminada comenzando con la versin 6 de PHP

DIFERENCIAS ENTRE MYSQL Y MYSQLILAS


Extensin MySQL
1. La extensin MySQL es compatible con los nuevos servidores
de MySQL, pero no aprovecha las nuevas funcionalidades
surgidas

desde

la

versin

4.1.13.

Teniendo en cuenta que oficialmente no se recomienda, y que


no

evoluciona,

MySQL:

La

es

vieja

mejor

olvidarse

de

extensin.

Existe

desde

su

uso.

PHP

3,

pero oficialmente se ecomienda no usarla.


Extensin mysqli
La extensin

mysqli contiene

numerosos

beneficios

como:

Interfaz orientada a objetos, aunque se puede utilizar de forma


procedural como MySQL.
7

Soporte

para

Declaraciones

Preparadas.

Mejorando

la

seguridad y evitando SQL injections.

Soporte para Mltiples Declaraciones

Soporte para Transacciones y rollbacks.

Mejoradas las opciones de depuracin

Soporte para servidor empotrado


Mysqli: Extensin que sustituye al viejo mysql. Es la opcin
recomendada oficialmente por PHP.
CAPITULO I

Estructura orientada a objetos


MySQLi proporciona un conjunto de funciones para una estructura
de cdigo con estilo de procedimientos para hacer la transicin de
MySQL ms fcil. Sin embargo tambin proporciona funcionalidad
a travs de un conjunto de clases orientadas a objetos. El uso del
estilo orientado a objetos puede lograr que la integracin de MySQL
se ajuste mejor con las caractersticas orientadas a objetos de la
versin 5 de PHP y a menudo elimina la necesidad de crear variables
adicionales para respaldar las operaciones y tareas de MySQL. Por
ejemplo, lo siguiente muestra el cdigo para conectarse a un
servidor de bases de datos y abrir una base de datos en MySQL y en
8

MySQLi: MySQL: $dbc = mysql_connect ("localhost", "user",


"password"); $db = mysql_select_database ("database"); MySQLi:
$db = new mysqli ("localhost", "user", "password", "database");
Instrucciones preparadas
Quiz la mayor diferencia entre MySQL y MySQLi es el soporte de
este ltimo para instrucciones preparadas. Con MySQL debes de
tener especial precaucin para usar la instruccin escape en cada
cadena usada en una consulta para prevenir ataques de inyeccin en
SQL. Con MySQLi y las instrucciones preparadas puedes enlazar
conjuntos de parmetros a una consulta e igualar estos ltimos con
los diferentes valores que quieras usar en la consulta. MySQLi se
encarga de asegurarse de que se use apropiadamente la instruccin
escape en todo el cdigo antes de ser aplicado en la base de datos.
Por ejemplo, el siguiente cdigo inserta dos registros en una tabla de
MySQL usando MySQLi: $stmt = $db->prepare ("INSERT INTO
PEOPLE (FullName, Email) values (?, ?); $stmt->bind_param("ss",
$fullname, $email); $fullname = "John Johnson"; $email =
"john@johnjohnson.com"; $stmt->execute();
La extensin
Aunque no ofrece ninguna novedad respecto a otras interfaces de
gestin de bases de datos MySQL mediante PHP, la extensin
MySQLi, o como a veces se le conoce, la extensin de MySQL
9

mejorada, viene incluida en las versiones PHP 5 y posteriores y se


desarroll para aprovechar las nuevas funcionalidades que incluyen
las versiones de MySQL posteriores a la 4.1.3. Desde la pgina
oficial de PHP se nos sugiere su uso argumentando que Esta es la
opcin recomendada, ya que utilizando el controlador nativo de
MySQL resulta en un mejor rendimiento y permite el acceso a
funciones que no estn disponibles cuando se utiliza la biblioteca de
cliente MySQL. Comparada con la extensin MySQL ofrece las
siguientes mejoras:
Interfaz orientada a objetos
Soporte para Declaraciones Preparadas
Soporte para Mltiples Declaraciones
Soporte para Transacciones
Mejoradas las opciones de depuracin
Soporte para servidor empotrado
Conocido el manejo de las bases de datos MySQL y el manejo de las
mismas mediante PDO o la librera mysql la utilizacin de esta
nueva opcin no va a plantearnos demasiadas dificultades. Lo
iremos comprobando en los epgrafes siguientes.

10

CAPITULO II
Gestin de bases de datos MySQL mediante MySQLi
Cuando se utiliza esta librera existen dos posibilidades de gestin
de las bases de datos MySQL o MariaDB. Por un lado, la gestin
que podemos llamar clsica que guarda una gran similitud con la
ya conocida de la gestin por procesos de MySQL y, como opcin
alternativa, el estilo orientado a objetos que ya hemos manejado al
tratar del PDO.
En pginas anteriores hemos tratado ambos formas de proceder. Por
ello en este caso intentaremos concretar en paralelo ambas
formas de proceder. Interaremos ir describiendo ambas formas de
sintaxis y los sucesivos epgrafes y trataremos tambin de ir
11

desarrollando ejemplos, con los mismos resultados, en ambas


modalidades de programacin.
Creacin de bases y/o acceso a bases de datos
MySQLi no es un servidor de bases de datos nuevo o distinto de
MySQL. Es nicamente una extensin PHP para acceder a ese tipo
de bases de datos. Por tanto, los elementos propios de
MySQL: ficheros, tablas, tipos de datos, ndices y sentencias son
exactamente los ya comentados en las pginas cuyos enlaces hemos
incluido en este prrafo.
Desarrollaremos todos los ejemplos atendiendo a la existencia de un
fichero al que llamaremos mysqli.inc.php cuyo contenido.
Conexin/desconexin al servidor de bases de datos
MySQL
Estilo por procesos
La sintaxis no difiere demasiado de la ya conocida. Cunado
utilizamos la programacin mediante procesos la sintaxis ser la
clsica de MySQL utilizando ahora la funcin mysqli_connec en vez
de mysql_connec. La instruccin sera:
$conexion= mysqli_connect(host,
Dnde $conexion es

el

usuario,

identificador

de

contrasea )
la

conexin

y host, usuario y contrasea los respectivos nombres del servidor,


usuario y contrasea que estn recogidos en la variables incluidas en
12

el fichero mysqli.inc.php al que hemos hecho alusin en prrafos


anteriores.
Cuando

se

trata

de

cerrar

la

conexin

es

necesaria

ejecutar mysqli_close de forma similar a la ya conocida. Ahora


deberemos escribir:
mysqli_close ($conexion)

Estilo orientado a objetos


$objeto= new
mysqli
Dnde $objeto es

el

(servidor,
identificador

y servidor, usuario y contrasea los

usuario,
de

un

respectivos

contrasea)
nuevo

objeto,

nombres

del

servidor, usuario y contrasea que coinciden con las ya mencionadas


variables incluidas en el fichero mysqli.inc.php.
El cierre de la conexin requiere invocar el mtodo close () y por lo
tanto escribir algo como:
$objeto->close

()

Este es un ejemplo de utilizacin sucesiva de ambas modalidades de


programacin.
13

Vous aimerez peut-être aussi