BDD - Gestión de bases de datos MySQL y mapeo de clases PHP

Introducción
Requisitos
Descarga
Instalación
Configuración
Documentación


Introducción

Bdd es una clase PHP para el mapeo de bases de datos MySQL. Supongo que como para la mayoría de los programadores, el acceso y gestión de datos en el desarrollo de software es una tarea bastante ingrata. Según el lenguaje de programación que utilicemos disponemos de frameworks o herramientas de mapeado que pueden facilitar tareas tales como conectar con una base de datos, recoger información con un SELECT, insertar registros, eliminarlos, cerrar conexiones, etc, etc... Como es sabido, en la programación orientada a objetos, el trasladar la información de un objeto a una base de datos no puede ser directo, es decir, necesitamos transformar dicha información en datos que la base de datos pueda comprender y manejar. Con el propósito de facilitar este proceso aparecieron herramientas de mapeo objeto-relacional (p.ej: Hibernate en Java). En el caso de PHP existen ciertas opciones que resuelven o alivian el trabajo en cierta medida.
Mi experiencia, en la inmensa mayoría de desarrollos que realizo en PHP los llevo a cabo manejando bases de datos MySQL, por lo general de pequeñas/medianas dimensiones. Además, el hosting que el cliente necesita (o se puede permitir pagar) suele ser de tipo compartido, con apenas una consola PHPMyAdmin y restricciones a la hora de crear un modelo relacional (casi siempre base de datos con motor de tipo MyISAM).

Con esta serie de restricciones, el uso de gran parte de frameworks o herramientas de mapeo se obstaculiza e incluso pierde sentido. Llegados a este punto, opté por crear una clase que permitiera agilizar el manejo de conexiones y consultas a bases de datos MySQL. No es la panacea ni el milagro definitivo, pero después de cierto tiempo puliendo detalles y utilizándola he podido apreciar una disminución notable del tiempo invertido en estos menesteres.
Por tanto, si el caso en el que te encuentras reúne las características que enumero, esta clase puede serte de utilidad:

  • El proyecto utiliza base de datos MySQL.
  • El proyecto se aloja en un servicio de hosting compartido.
  • La base de datos es de motor tipo MyISAM.
  • La base de datos no generará un volumen de datos especialmente elevado.

En definitiva, Bdd proporciona un método sencillo de mapeo de objetos PHP en bases de datos MySQL, permitiendo el manejo de datos sin apenas emplear consultas ni sintaxis SQL.

Requisitos

  • Servidor web con intérprete de PHP instalado.
  • Servidor MySQL.
  • ¡Eso es todo!

Descarga

La última versión estable está disponible
También desde aquí

Instalación

El proceso de instalación es extremadamente sencillo. Tan sólo hay que descomprimir el contenido del archivo en algún directorio de publicación del servidor web y listo.

Configuración

Existen dos archivos: Bdd.jfm.class.php es la clase propiamente dicha y Bdd.jfm.conf.php que es el archivo de configuración. Este es el contenido del archivo de configuración:

								define('BDD_SERVER','URL del servidor');  
								define('BDD','nombre de la base de datos');
								define('BDD_USER','usuario de la base de datos'); 
								define('BDD_PASSWORD','password de la base de datos');
								//Enable/Disable debug messages (ON/OFF)
								define('DEBUG','OFF');
							
La última línea del archivo activa o desactiva la visualización de mensajes, útiles para tareas de depuración.

Documentación

Documentación en línea