[Php-avanzado] Normalización ejercicio 2
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Mie Jun 26 22:20:29 ART 2013
Ariel,
El mié, 26-06-2013 a las 21:22 -0300, Ariel Fernández escribió:
> ah, a ver si te entendí, lo planteé diferente:
> como no estoy repitiendo datos, sino una referencia, puse dos
> id_ciudad en Direcciones, uno para cada dirección
> ( sospecho que acá también está como obligatoria la alternativa, no? )
Tu sospecha es justificada.
Lo que hiciste de llama "tabla universal", es una tabla con todos los
datos, y los que te hacen falta están completos y los que no, no.
La tabla universal está siempre mal normalizada (pero es la
aproximación correcta para bases de datos no relacionales, como las
NoSQL, tema que excede de lejos este curso)
> Socios
>
> Ciudades
>
> Provincias
>
> Direcciones
> id
>
> id
>
> id
>
> id
> apellidos
>
> nombre
>
> nombre
>
> id_socio
> nombres
>
> cp
>
> id_país
>
> dirección_prin
> teléfono
>
> id_provincia
>
>
>
> id_ciudad
> id_direccion
>
>
>
> Países
>
> dirección_alt
>
>
>
>
> id
>
> id_ciudad
>
>
>
>
> nombre
>
>
>
>
>
>
> entonces creo que podría ser así:
>
>
>
>
> Socios
>
> Ciudades
>
> Provincias
>
> Direcciones
> id
>
> id
>
> id
>
> id
> apellidos
>
> nombre
>
> nombre
>
> id_socio
> nombres
>
> cp
>
> id_país
>
> dirección
> teléfono
>
> id_provincia
>
>
>
> id_ciudad
>
>
>
>
>
> Países
>
>
>
>
>
>
> id
>
>
>
>
>
>
> nombre
>
>
Esta versión está bien normalizada.
La redacción del enunciado es lo suficientemente ambigua para que
también esté bien en el caso de que el campo "teléfono" esté en la tabla
Direcciones.
> Cuando me decís que no dependen exclusivamente del Socio, es porque
> dependen también de la ciudad, no?
Claro!
> Los demás también están mal? uh, se ve que no termino de entender cómo
> determinar la dependencia de las claves entonces....
Fijate si lo que te digo en el mail anterior sobre la clave primaria no
"te prende la lamparita".
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
Web: http://leonardo.tadei.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado