OT - mysql - tabla 1-N vs campo CSV

Chema Cortes pych3m4 en gmail.com
Mie Oct 28 14:48:55 CET 2009


El día 28 de octubre de 2009 13:34, a.porrua en gmail.com
<a.porrua en gmail.com> escribió:
> Supongamos un 1-N que jamás se empleará para hacer búsquedas
>
> ¿Por qué no puedo implementarlo como una lista separada por comas?

Hay mucha gente que cree, porque así se lo enseñan en las carreras de
informática, que la normalización de una base de datos termina en su
tercera formal normal (3FN) tal como introdujeron Boyce-Codd. En
realidad pueden haber tres formas normales más, desde 4FN hasta 6FN,
algo que muchos confunden, por ignorancia, con diseños menos
normalizados.

En tu caso, tu intuición te hace ver que se puede evitar cierta
redundancia en el diseño, lo que sería alcanzar la 4FN:

http://es.wikipedia.org/wiki/Cuarta_forma_normal

Una forma intermedia de evitar tener que trocear una tabla para llegar
a la 4FN sería emplear un campo multivalor (array), como el que tiene,
por ejemplo, postgresql.


> opción 1, la ortodoxa
>
> Tabla paises:
>
>        paisId = 1
>        pais = España
>
>        ...
>
> Tabla ciudades:
>        paisId=1
>        ciudad=Barcelona
>
>        paisId=1
>        ciudad=Almería
>
>
> Opción 2, la vagancia
>        paisId=1
>        pais= España
>        ciudades=Barcelona, Almería
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es