Diferencia entre revisiones de «PHP Operacións BD Mysql»

De MediaWiki
Ir a la navegación Ir a la búsqueda
Línea 3: Línea 3:
 
* Como comentamos no [http://wiki.cifprodolfoucha.es/index.php?title=PHP_Introduci%C3%B3n_acceso_a_base_de_datos punto anterior], para conectarnos a un xestor de base de datos específico imos ter que ter instalados os drivers correspondentes.
 
* Como comentamos no [http://wiki.cifprodolfoucha.es/index.php?title=PHP_Introduci%C3%B3n_acceso_a_base_de_datos punto anterior], para conectarnos a un xestor de base de datos específico imos ter que ter instalados os drivers correspondentes.
  
−
: Un driver é o software que nos permite comunicarnos cunha base de datos, pero normalmente non imos facer dita comunicación utilizando o driver directamente se non que o usaremos a través dunha [https://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones API], que son un conxunto de clases, funcións,... que nos permiten facer uso do driver e conectar a un xestor de base de datos.
+
: Un driver é o software que nos permite comunicarnos cun xestor de base de datos, pero normalmente non imos facer dita comunicación utilizando o driver directamente se non que o usaremos a través dunha [https://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones API], que son un conxunto de clases, funcións,... que nos permiten facer uso do driver e conectar a un xestor de base de datos.
  
 
* Existen dous tipos de API´s:  
 
* Existen dous tipos de API´s:  
Línea 25: Línea 25:
  
 
* Para conectarnos imos utilizar as funcións mysql'''i''' (mysql improved) que foron introducidas a partires de Mysql 4.1
 
* Para conectarnos imos utilizar as funcións mysql'''i''' (mysql improved) que foron introducidas a partires de Mysql 4.1
−
: A extensión mysqli ven <u>incluída nas versiones PHP 5 y posteriores</u>.
+
: A extensión mysqli ven <u>incluída nas versiones PHP 5 e posteriores</u>.
  
 
: Algunha das melloras de dita extensión con respecto á extensión mysql:
 
: Algunha das melloras de dita extensión con respecto á extensión mysql:

Revisión del 20:46 27 dic 2016

Introdución

  • Como comentamos no punto anterior, para conectarnos a un xestor de base de datos específico imos ter que ter instalados os drivers correspondentes.
Un driver é o software que nos permite comunicarnos cun xestor de base de datos, pero normalmente non imos facer dita comunicación utilizando o driver directamente se non que o usaremos a través dunha API, que son un conxunto de clases, funcións,... que nos permiten facer uso do driver e conectar a un xestor de base de datos.
  • Existen dous tipos de API´s:
  • Procedimentais: Facemos uso de funcións para realizar as operacións contra a base de datos.
  • Orientadas a obxectos: Instanciamos clases e chamamos a métodos dos obxectos creados.

Normalmente faremos uso desta segunda opción.


  • En PHP, ditas API´s se 'activan' facendo uso de Extensións.
Indicar que unha API non é o mesmo que unha extensión en PHP, xa que algunhas extensións non proporcionan ningunha API ao usuario (por exemplo a extensión do driver PDO MySQL, non proporciona ningunha API ó programador PHP).


  • Existen tres APIs principais para conectar a un servidor de bases de datos MySQL:
  • Extensión MySQL de PHP
  • Extensión mysqli de PHP
  • Obxectos de Datos de PHP (PDO)


  • Para conectarnos imos utilizar as funcións mysqli (mysql improved) que foron introducidas a partires de Mysql 4.1
A extensión mysqli ven incluída nas versiones PHP 5 e posteriores.
Algunha das melloras de dita extensión con respecto á extensión mysql:


Dita extensión tamén ten unha versión procedural, de tal forma que imos poder chamar ás funcións de dúas maneiras diferentes:

Exemplo de función cun estilo procedimental que pecha unha conexión a unha base de datos ($link é un identificador cando se fai a conexión contra a base de datos):

1 mysqli_close($link);

Exemplo de función cun estilo obxectual que pecha unha conexión a unha base de datos:

1 mysqli::close();


  • Aquí tedes un cadro comparativo obtido de php.net onde se ve o comentado anteriormente:
Php BD 2.jpg


Nota: Máis información neste enlace.

Conexión


-- Ángel D. Fernández González -- (2016).