Estoy diseñando una aplicación de administrador de contactos/libreta de direcciones, pero no puedo establecer el diseño de la base de datos.Diseño de la base de datos de la libreta de direcciones: desnormalizar?
En mi configuración actual, tengo un contacto, que tiene direcciones, números de teléfono, correos electrónicos y organizaciones. Todas las propiedades de contacto son actualmente tablas separadas con un fk en la tabla de contactos. No hace falta decir que un contacto puede tener cualquier cantidad de estas propiedades.
Ahora, me encuentro uniendo todas estas tablas si quiero leer contactos en la aplicación. Dado que no se realizan filtros, búsquedas inversas, ordenaciones, etc. en las tablas relacionadas, ¿no es una solución mejor/más simple almacenar simplemente los campos relacionados como listas codificadas json en propiedades directas de la tabla de contactos?
P. ej., En lugar de un contacto con un fk en una tabla de números de teléfono con 3 entradas, simplemente codifique todos los números de teléfono y guárdelos en un campo de la tabla de contactos.
¡Cualquier idea realmente apreciada! (fyi estoy usando Django aunque eso realmente no importa)
+1 ... Estoy de acuerdo 100%! –