alanezz / Syllabus-2019-1

26 stars 13 forks source link

Dependencias funcionales actividad #105

Closed cacosandon closed 5 years ago

cacosandon commented 5 years ago

Hola!

Cómo puedo hacer el siguiente ejercicio? Aparte de sacar isbn como key, no veo como podría arreglarlo.

Gracias de antemano! image

felipegarcia98 commented 5 years ago

Por aca pensabamos que se podia sacar el cardnum de orders

alanezz commented 5 years ago

Hola,

El problema lo tiene la relación Orders. Esto porque el ordernum te determina el cid, cardnum y el order_date. Recordemos además que el ship_date es distinto para cada libro (piensa en Amazon, si haces un pedido con muchos libros, estos pueden llegar en distintos días).

La dependencia anterior rompe BCNF, así que descomponemos Orders en dos tablas:

Orders(ordernum, cid, cardnum, order_date, PRIMARY KEY(ordernum)) Orderlist(ordernum, isbn, qty, ship_date, PRIMARY KEY(ordernum, isbn))

En donde cada tabla tiene sólo las dependencias funcionales que te dan las llaves, por lo que ahora ambas están en BCNF.

Saludos.

cacosandon commented 5 years ago

Muchas gracias!