lunes, 14 de febrero de 2011

Crear modelo de datos a partir de las tablas

Hola, muchas veces necesitamos aclarar un poco el panorama con respecto al modelo de datos de nuestro sistema, ver relaciones, tablas, costraint, etc. para esto tenemos varias herramientas open source que nos permiten generar el modelo de datos a partir de cualquier base de datos, existe un plugin para eclipse llamado clay database, el cual es bastante bueno y nos permite generar este modelo y manipular tablas desde el mismo eclipse, se los dejo para que lo revisen.

Sin embargo ahora vamos a hablar de otra herramienta, escrita en java, open source y multiplataforma, se llama SchemaSpy y esta disponible en sourceforge.net (http://schemaspy.sourceforge.net/) básicamente se traduce en el uso de una librería jar, la cual con una serie de comandos y sus parametros nos permite generar de forma automática este modelo de datos y otra información de la base que necesitamos, entonces descargamos este jar y lo dejamos en un directorio que creamos, en este mismo directorio debemos colocar el jar para conectarnos a postgres, luego:

1.- ejecutamos el sigte. comando desde el directorio con los parámetros que se indican:

slack@zion:~/programas/SchemaSpy$ java -jar schemaSpy_5.0.0.jar -t pgsql -db sdemovistar -host localhost -u sdemovistar -p sdemovistar -s public -dp postgresql-jdbc3-8.1-405.jar -o der

la ejecución del comando anterior nos despliega un log como el sigte:

Using database properties:
[schemaSpy_5.0.0.jar]/net/sourceforge/schemaspy/dbTypes/pgsql.properties
Gathering schema details.......(0sec)
Writing/graphing summary............(0sec)
Writing/diagramming details....(0sec)
Wrote relationship details of 4 tables/views to directory 'der' in 0 seconds.
View the results by opening der/index.html
slack@zion:~/programas/SchemaSpy$

Una vez hecho esto se genera en el mismo directorio de salida que uno parametriza, en este caso le llame der y va al final de la linea de comando -o (output) der

dentro de este directorio crea un archivo index.html, el que al abrir con cualquier browser nos muestra la salida generada con esta herramienta.

Y así, facil y bonito, por eso bee free... use Linux.

No hay comentarios: