En aquesta secció, treballarem amb exercicis pràctics per aplicar els conceptes de normalització que hem après en els mòduls anteriors. La normalització és un procés crucial per dissenyar bases de dades eficients i lliures de redundàncies i anomalies. A continuació, es presenten diversos exercicis amb les seves respectives solucions per ajudar-te a consolidar els teus coneixements.

Exercici 1: Primera Forma Normal (1NF)

Descripció de l'Exercici

Considera la següent taula que conté informació sobre comandes de clients:

ComandaID ClientNom Productes Quantitats
1 Joan Poma, Plàtan 2, 3
2 Maria Taronja, Maduixa, Kiwi 1, 2, 1
3 Pere Poma, Taronja 1, 2

Tasca

Transforma aquesta taula a la Primera Forma Normal (1NF).

Solució

Per portar la taula a la 1NF, hem de garantir que cada cel·la contingui un valor únic i no un conjunt de valors. Això implica descompondre les llistes de productes i quantitats en files separades.

ComandaID ClientNom Producte Quantitat
1 Joan Poma 2
1 Joan Plàtan 3
2 Maria Taronja 1
2 Maria Maduixa 2
2 Maria Kiwi 1
3 Pere Poma 1
3 Pere Taronja 2

Exercici 2: Segona Forma Normal (2NF)

Descripció de l'Exercici

Considera la següent taula resultant de l'exercici anterior:

ComandaID ClientNom Producte Quantitat
1 Joan Poma 2
1 Joan Plàtan 3
2 Maria Taronja 1
2 Maria Maduixa 2
2 Maria Kiwi 1
3 Pere Poma 1
3 Pere Taronja 2

Tasca

Transforma aquesta taula a la Segona Forma Normal (2NF).

Solució

Per portar la taula a la 2NF, hem de garantir que no hi hagi dependències parcials. Això significa que tots els atributs no clau han de dependre de la clau primària completa. En aquest cas, ClientNom depèn només de ComandaID, no de la combinació de ComandaID i Producte.

Primer, descomponem la taula en dues taules:

Comandes:

ComandaID ClientNom
1 Joan
2 Maria
3 Pere

DetallsComanda:

ComandaID Producte Quantitat
1 Poma 2
1 Plàtan 3
2 Taronja 1
2 Maduixa 2
2 Kiwi 1
3 Poma 1
3 Taronja 2

Exercici 3: Tercera Forma Normal (3NF)

Descripció de l'Exercici

Considera les següents taules:

Comandes:

ComandaID ClientNom
1 Joan
2 Maria
3 Pere

DetallsComanda:

ComandaID Producte Quantitat
1 Poma 2
1 Plàtan 3
2 Taronja 1
2 Maduixa 2
2 Kiwi 1
3 Poma 1
3 Taronja 2

Tasca

Transforma aquestes taules a la Tercera Forma Normal (3NF).

Solució

Per portar les taules a la 3NF, hem de garantir que no hi hagi dependències transitives. Això significa que tots els atributs no clau han de dependre només de la clau primària.

En aquest cas, les taules ja estan en 3NF, ja que no hi ha dependències transitives. ClientNom depèn directament de ComandaID, i Quantitat depèn directament de la combinació de ComandaID i Producte.

Exercici 4: Desnormalització

Descripció de l'Exercici

Considera les següents taules normalitzades:

Comandes:

ComandaID ClientNom
1 Joan
2 Maria
3 Pere

DetallsComanda:

ComandaID Producte Quantitat
1 Poma 2
1 Plàtan 3
2 Taronja 1
2 Maduixa 2
2 Kiwi 1
3 Poma 1
3 Taronja 2

Tasca

Desnormalitza aquestes taules per obtenir una sola taula que contingui tota la informació.

Solució

Per desnormalitzar les taules, combinarem les dues taules en una sola taula que contingui tota la informació:

ComandaID ClientNom Producte Quantitat
1 Joan Poma 2
1 Joan Plàtan 3
2 Maria Taronja 1
2 Maria Maduixa 2
2 Maria Kiwi 1
3 Pere Poma 1
3 Pere Taronja 2

Conclusió

En aquesta secció, hem treballat amb diversos exercicis per aplicar els conceptes de normalització fins a la Tercera Forma Normal (3NF) i també hem explorat la desnormalització. La normalització és essencial per garantir la integritat i l'eficiència de les bases de dades, mentre que la desnormalització pot ser útil en certes situacions per millorar el rendiment de les consultes. Practicar aquests exercicis t'ajudarà a comprendre millor aquests conceptes i a aplicar-los en situacions reals.

© Copyright 2024. Tots els drets reservats