Ver Mensaje Individual
  #12 (permalink)  
Antiguo 21/04/2016, 07:33
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: ¿Es posible trabajar con una base de datos mysql sin relacionar?

Gracias por el link.
Estuve revisando a vuelo de pájaro la base que te diseñaron, y hay de entrada algunas conclusiones que surgen de allí.
Por lo pronto es un excelente ejemplo de lo que NO se debe hacer en arquitectura de datos. Un ejemplo realmente pedagógico de los errores y problemas que causa la falta de relaciones.

Algunos detalles que vi de entrada son:
1) Las tablas son InnoDB, por lo que no existe ninguna limitación para crear las relaciones.
2) La falta de FK obliga a sobrecargar las tablas con los ID que las relacionan con otras. Esto implica que un dato que se agrega o se modifica debe poblar N tablas en algún momento, y existen N casos donde puede filtrarse un error. Es una MALA práctica.
3) Al no crear las relaciones, no se puede determinar las dependencias funcionales de las tablas sin realizar un exhaustivo análisis del diseño. Eso genera costos adicionales en desarrollo, toda vez que se realiza una modificación en la aplicación o en la base.
4) Muy grave: Como el mantenimiento de la consistencia es programático, existe un excesivo acoplamiento entre base y aplicación. Ese tipo de acoplamientos son nocivos, entre otras cosas porque aumenta la posibilidad de fallos ante cualquier cambio, e imposibilita nuevos desarrollos sin tener que re-analizar todo el diseño de datos.
... y todavía no empecé a mirar los tipos de dato, de los cuales algunos ya vi que no están correctamente definidos, o al menos no lo están a nivel de MySQL.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 21/04/2016 a las 07:53