PHP Introdución acceso a base de datos

De MediaWiki
Saltar a: navegación, buscar

Introdución

  • O obxectivo desta unidade didáctica é amosar como podemos, dende php, acceder a datos gardados nunha base de datos.
Imos poder realizar algunha destas operacións:
  • Consulta: Recuperar datos dunha ou varias táboas e amosar o resultado ao usuario.
  • Actualización: Modificar algún dos datos gardados nunha táboa da base de datos.
  • Inserción: Engadir novos datos a algunha táboa da base de datos.
  • Borrado: Eliminar algún dato dunha táboa da base de datos.
  • Relacionado có anterior tamén imos ver como realizar transaccións. Unha Transacción vai permitir realizar un conxunto de operacións sobre unha base de datos como se foran unha única operación, garantindo que o se fai toda á vez ou en caso de erro desfará todas as operacións feitas e deixará a base de datos igual a como estaba antes de iniciar a transacción.

Pasos a seguir

  • Cando queremos facer uso dos datos gardados nunha base de datos teremos que facer os seguinte pasos:
  1. Conectar á base de datos. Isto o faremos con funcións que nos proporciona PHP para cada tipo de base de datos.
  2. Realizar algunha das operacións descritas anteriormente. No caso dunha consulta, teremos nunha variable o conxunto de resultados (normalmente en forma de array) que teremos que percorrer ata finalizar.
  3. Liberamos os recursos utilizados.
  4. Pechamos a conexión á base de datos. Isto en PHP non é necesario se non utilizamos conexións persistentes (conexións que non se pechan cando remata de executarse o script PHP), pero nos imos facelo xa que desta forma se liberan os recursos PHP e MYSQL de forma inmediata.


Tipos de accesos a bases de datos

  • Dende PHP imos poder conectarnos a múltiples bases de datos, aínda que a máis común vai ser Mysql.
Para conectarnos a unha base de datos necesitamos ter instalado os 'drivers' que nos permiten acceder a dita base de datos. Normalmente imos acceder á base de datos a través dunha API, que vai facer uso do Driver. A API (Application Program Interface) vai 'ofrecer' un conxunto de funcións (ou clases) para poder acceder ás bases de datos.
Normalmente cada base de datos vai ter diferentes funcións con diferentes parámetros para conectarse e poder realizar operacións sobre ela.


  • Cando conectamos a unha base de datos podemos facelo:
  • 'Directamente'
  • A través dunha 'ponte' sendo esta a que se conecta á base de datos utilizando os drivers específicos (coma por exemplo ODBC)
PHP ODBC Driver Architecture.png


A vantaxe de facelo desta forma é que non temos porque saber que funcións/clases son necesarias para conectar a xestor de base de datos específico. Sempre imos facer uso das funcións que nos proporciona a 'ponte' que estamos a utilizar.
A desvantaxe soe ser de rendemento, xa que estamos a engadir unha 'capa' adicional no acceso ao servidor de base de datos.


  • En PHP podemos facer uso das seguintes 'pontes' e acceso directo a base de datos específicas:
Php BD 1.jpg
Información obtida de php.net






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