Carlos A. Garc铆a

Herramientas de base de datos

Autor: Carlos A. Garc铆a. Archivado en M茅todos 脕giles, Oracle
Etiquetas: · ·
28/abr/2008  

Hace un tiempo descubr铆 (si, lo s茅, no es original) una herramienta de dise帽o de bases de datos muy correcta. Es un programa llamado dbdesigner que es muy 煤til para dibujar el t铆pico entidad relaci贸n. Adem谩s, es capaz de guardar el dise帽o en un fichero XML que, adem谩s de ser editable, es bastante legible (lo siento, no puedo decir lo mismo de Visio).

El problema es que esta herramienta s贸lo transforma el XML en instrucciones ejecutables sobre MySQL… lo cual no est谩 mal si todos tus clientes tienen este sistema gestor de base de datos. No es nuestro caso, que trabajamos en muchos casos con Oracle.

As铆 que 驴Qu茅 hacemos? 驴Utilizo la herramienta y genero c贸digo MySQL o intento transformar el XML en instrucciones Oracle? Opt茅 por la segunda opci贸n y gener茅 una serie de ficheros XSLT que convierten el agua en vino y el XML en instrucciones ejecutables como un script Oracle. Lo del vino es mentira, pero estoy en ello.

El funcionamiento es muy sencillo (y muy r煤stico, s铆, muy r煤stico). Abres el XML con el editor de texto que te de la gana y especificas la plantilla XSL con la que vas a transformarlo (dependiendo de si quieres crear las tablas, eliminarlas, crear las claves primarias, etc) El que he colgado especifica como plantilla crear_claves_externas.xsl, que genera las claves for谩neas. Una vez hecho esto, guardas el fichero y lo abres con el navegador (explorer, firefox, etc)

S贸lo he colgado una serie de utilidades para no pasarme, pero es posible crear de esta forma cualquier objeto de base de datos. Para este proyecto hemos creado autom谩ticamente triggers, procedimientos, funciones, paquetes, etc. Si os interesa, puedo enviaros el XSLT que necesiteis.

Espero comentarios, sugerencias de mejora y cualquier aportaci贸n que se os ocurra.

Se me olvidaba … He tenido que crear el tipo VARCHAR2 en DBDesigner.

Enlace a Dise帽ador





Art铆culos relacionados




Deja tu comentario








* Campos obligatorios  




Sin Comentarios »