Diferència entre revisions de la pàgina «M2 - Bases de dades / UF1NF2: Solucions exercicis Model Relacional»
(→Pizzeria) |
(→Pizzeria) |
||
(Hi ha 31 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 9: | Línia 9: | ||
[[Imatge:uf1nf2_sol_pizzeria1.png |600px|center| Solució Ingredients d'una pizza]] | [[Imatge:uf1nf2_sol_pizzeria1.png |600px|center| Solució Ingredients d'una pizza]] | ||
− | PIZZA (''''' | + | PIZZA ('''''Pizza_ID''''', Nom) |
− | INGREDIENTS (''''' | + | INGREDIENTS ('''''Ing_ID''''', Nom) |
− | ES_COMPON (''''' | + | ES_COMPON ('''''Pizza_ID, Ingr_ID''''') ON {Pizza_ID} REFERENCIA PIZZA I {Ingr_ID} REFERENCIA INGREDIENTS |
Línia 24: | Línia 24: | ||
[[Imatge:uf1nf2_sol_pizzeria2.png |370px|center| Solució Ingredients substituibles]] | [[Imatge:uf1nf2_sol_pizzeria2.png |370px|center| Solució Ingredients substituibles]] | ||
− | + | INGREDIENTS ('''''Ingr_ID''''', Nom) | |
− | SUBSTITUT(''''' | + | SUBSTITUT('''''Ingr_ID1, Ingr_ID2''''') ON {Ingr_ID1} REFERENCIA INGREDIENTS I {Ingr_ID2} REFERENCIA INGREDIENTS |
Línia 41: | Línia 41: | ||
1. Cada entitat es converteix en una relació. L’entitat generalitzada conté els atributs comuns i les especialitzacions tenen la clau, que fa referència a l’entitat generalitzada i els atributs específics. | 1. Cada entitat es converteix en una relació. L’entitat generalitzada conté els atributs comuns i les especialitzacions tenen la clau, que fa referència a l’entitat generalitzada i els atributs específics. | ||
− | LOCAL (''''' | + | LOCAL ('''''Local_ID''''', Adreça, Telefon) |
− | RESTAURANT (''''' | + | RESTAURANT ('''''Local_ID''''', Capacitat) ON {Local_ID} REFERENCIA LOCAL |
+ | |||
+ | PER_EMPORTAR ('''''Local_ID''''', Num_Motos) ON {Local_ID} REFERENCIA LOCAL | ||
− | |||
2. Tan sols es tradueixen les entitats especialitzades. Els atributs comuns es posen a les dues entitats especialitzades. Aquesta opció l’anterior en cas que les entitats especialitzades s’utilitzin més que la generalitzada i quan s’hagin d’establir relacions entre algunes entitats especialitzades independentment de les altres. | 2. Tan sols es tradueixen les entitats especialitzades. Els atributs comuns es posen a les dues entitats especialitzades. Aquesta opció l’anterior en cas que les entitats especialitzades s’utilitzin més que la generalitzada i quan s’hagin d’establir relacions entre algunes entitats especialitzades independentment de les altres. | ||
− | RESTAURANT (''''' | + | RESTAURANT ('''''Local_ID''''', Adreca, Telefon, Capacitat) |
+ | |||
+ | PER_EMPORTAR ('''''Local_ID''''', Adreca, Telefon, Num_Motos) | ||
− | |||
3. Es tradueix tot a una única entitat amb tots els atributs i amb un atribut addicional que indica el subtipus o especialització. És útil si hi ha pocs (o cap) atributs a les entitats especialitzades, altrament genera molts valors nuls: | 3. Es tradueix tot a una única entitat amb tots els atributs i amb un atribut addicional que indica el subtipus o especialització. És útil si hi ha pocs (o cap) atributs a les entitats especialitzades, altrament genera molts valors nuls: | ||
− | LOCAL (''''' | + | LOCAL ('''''Local_ID''''', Adreca, Telefon, Capacitat, Num_Motos, TipusLocal) |
Línia 66: | Línia 68: | ||
[[Imatge:uf1nf2_sol_pizzeria4.png |600px|center| Solució Comandes de pizzes]] | [[Imatge:uf1nf2_sol_pizzeria4.png |600px|center| Solució Comandes de pizzes]] | ||
− | COMANDA (''''' | + | COMANDA ('''''Num_Comanda''''', Data) |
− | LINIA_COMANDA (''''' | + | LINIA_COMANDA ('''''Num_Comanda, Numj_Linia''''', Producte, Quantitat) ON {Num_Comanda} REFERENCIA COMANDA |
Línia 80: | Línia 82: | ||
Per a traduir al model relacional una generalització-especialització hi ha diverses possibilitats: | Per a traduir al model relacional una generalització-especialització hi ha diverses possibilitats: | ||
+ | |||
1. Cada entitat es converteix en una relació. L’entitat generalitzada conté els atributs comuns i les especialitzacions tenen la clau, que fa referència a l’entitat generalitzada i els atributs específics. | 1. Cada entitat es converteix en una relació. L’entitat generalitzada conté els atributs comuns i les especialitzacions tenen la clau, que fa referència a l’entitat generalitzada i els atributs específics. | ||
− | EMPLEAT ('''''DNI''''') | + | EMPLEAT ('''''DNI''''', Nom, Telefon) |
− | CUINER ('''''DNI''''') ON {DNI} REFERENCIA EMPLEAT | + | CUINER ('''''DNI''''', Titulacio, Feina) ON {DNI} REFERENCIA EMPLEAT |
− | CAMBRER ('''''DNI''''') ON {DNI} REFERENCIA EMPLEAT | + | CAMBRER ('''''DNI''''', Torn) ON {DNI} REFERENCIA EMPLEAT |
− | + | MOTORISTA ('''''DNI''''', Any_Carnet) ON {DNI} REFERENCIA EMPLEAT | |
− | |||
2. Tan sols es tradueixen les entitats especialitzades. Els atributs comuns es posen a les dues entitats especialitzades. Aquesta opció l’anterior en cas que les entitats especialitzades s’utilitzin més que la generalitzada i quan s’hagin d’establir relacions entre algunes entitats especialitzades independentment de les altres. | 2. Tan sols es tradueixen les entitats especialitzades. Els atributs comuns es posen a les dues entitats especialitzades. Aquesta opció l’anterior en cas que les entitats especialitzades s’utilitzin més que la generalitzada i quan s’hagin d’establir relacions entre algunes entitats especialitzades independentment de les altres. | ||
− | CUINER ('''''DNI''''') | + | CUINER ('''''DNI''''', Nom, Telefon, Titulacio, Feina) |
− | CAMBRER ('''''DNI''''') | + | CAMBRER ('''''DNI''''', Nom, Telefon, Torn) |
− | + | MOTORISTA ('''''DNI''''', Nom, Telefon, Any_Carnet) | |
− | |||
3. Es tradueix tot a una única entitat amb tots els atributs i amb un atribut addicional que indica el subtipus o especialització. És útil si hi ha pocs (o cap) atributs a les entitats especialitzades, altrament genera molts valors nuls: | 3. Es tradueix tot a una única entitat amb tots els atributs i amb un atribut addicional que indica el subtipus o especialització. És útil si hi ha pocs (o cap) atributs a les entitats especialitzades, altrament genera molts valors nuls: | ||
− | EMPLEAT ('''''DNI''''') | + | EMPLEAT ('''''DNI''''', Nom, Titulacio, Feina, Torn, Any_Carnet, Tipus_Empleat) |
− | |||
'''L'empleat del mes''' | '''L'empleat del mes''' | ||
Línia 115: | Línia 115: | ||
[[Imatge:uf1nf2_sol_pizzeria6.png |600px|center| Solució L'empleat del mes]] | [[Imatge:uf1nf2_sol_pizzeria6.png |600px|center| Solució L'empleat del mes]] | ||
− | + | CAMBRER ('''''DNI''''', Torn) | |
− | COMANDA (''''' | + | COMANDA ('''''Num_Comanda''''', Data, DNI) ON {DNI} REFERENCIA CAMBRER |
Línia 128: | Línia 128: | ||
[[Imatge:uf1nf2_sol_pizzeria7.png |600px|center| Solució Motoristes]] | [[Imatge:uf1nf2_sol_pizzeria7.png |600px|center| Solució Motoristes]] | ||
− | MOTO (''''' | + | MOTO ('''''Matricula''''', Cilindrada, Propietat) |
− | MOTORISTA ('''''DNI''''', | + | MOTORISTA ('''''DNI''''', Any_Carnet, Matricula) ON {Matricula} REFERENCIA MOTO |
Línia 141: | Línia 141: | ||
[[Imatge:uf1nf2_sol_pizzeria8.png |600px|center| Solució Stock d'ingredients]] | [[Imatge:uf1nf2_sol_pizzeria8.png |600px|center| Solució Stock d'ingredients]] | ||
− | LOCAL (''''' | + | LOCAL ('''''Local_ID''''', Adreça, Telefon) |
− | + | INGREDIENTS ('''''Ing_ID''''', Nom) | |
− | + | DISPOSAR ('''''Local_ID, Ingr_ID''''', Stock, Stock_min) ON {Local_ID} REFERENCIA LOCAL I {Ing_ID} REFERENCIA INGREDIENTS | |
Línia 156: | Línia 156: | ||
[[Imatge:uf1nf2_sol_pizzeria9.png |600px|center| Solució Taules d'una pizzeria]] | [[Imatge:uf1nf2_sol_pizzeria9.png |600px|center| Solució Taules d'una pizzeria]] | ||
− | RESTAURANT (''''' | + | RESTAURANT ('''''Local_ID''''', Capacitat) |
− | TAULA (''''' | + | TAULA ('''''Local_ID, Num_Taula''''', Cadires) ON {Local_ID} REFERENCIA RESTAURANT |
Línia 169: | Línia 169: | ||
[[Imatge:uf1nf2_sol_pizzeria10.png |600px|center| Solució Fer una reserva en una pizzeria]] | [[Imatge:uf1nf2_sol_pizzeria10.png |600px|center| Solució Fer una reserva en una pizzeria]] | ||
− | TAULA (''''' | + | TAULA ('''''Local_ID, Num_Taula''''', Cadires) ON {Local_ID} REFERENCIA RESTAURANT |
+ | |||
+ | CLIENT ('''''DNI''''', Telefon) | ||
− | + | RESERVA ('''''Local_ID, Num_Taula, Data, Hora, DNI''''', Num_persones) ON {Local_ID, Num_Taula} REFERNCIA TAULA I {DNI} REFERENCIA CLIENT | |
− | |||
+ | <!-- | ||
==Fórmula 1== | ==Fórmula 1== | ||
Línia 266: | Línia 268: | ||
PATIR ('''''CodiPacient, NumeroMalaltia''''') ON {CodiPacient} REFERENCIA PACIENT I {NumeroMalaltia} REFERENCIA MALALTIA | PATIR ('''''CodiPacient, NumeroMalaltia''''') ON {CodiPacient} REFERENCIA PACIENT I {NumeroMalaltia} REFERENCIA MALALTIA | ||
+ | |||
==Botiga d'informàtica== | ==Botiga d'informàtica== | ||
Línia 284: | Línia 287: | ||
PROVEIR ('''''NomProveidor, CodiBarres''''') ON {NomProveidor} REFERENCIA PROVEIDOR I {CodiBarres} REFERENCIA PRODUCTE | PROVEIR ('''''NomProveidor, CodiBarres''''') ON {NomProveidor} REFERENCIA PROVEIDOR I {CodiBarres} REFERENCIA PRODUCTE | ||
+ | |||
==Missatgeria Corre-si-pots== | ==Missatgeria Corre-si-pots== | ||
Línia 324: | Línia 328: | ||
ADMINISTRATIU ('''''DNI''''', Nom, Cognoms, Telefon) | ADMINISTRATIU ('''''DNI''''', Nom, Cognoms, Telefon) | ||
+ | |||
==Companyia d'assegurances== | ==Companyia d'assegurances== | ||
Línia 332: | Línia 337: | ||
[[Imatge:uf1nf3_companyia_assegurances.png |700px|center|Companyia d'assegurances]] | [[Imatge:uf1nf3_companyia_assegurances.png |700px|center|Companyia d'assegurances]] | ||
+ | --> |
Revisió de 18:38, 9 gen 2024
Pizzeria
Ingredients d'una pizza
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi i una descripció:
PIZZA (Pizza_ID, Nom)
INGREDIENTS (Ing_ID, Nom)
ES_COMPON (Pizza_ID, Ingr_ID) ON {Pizza_ID} REFERENCIA PIZZA I {Ingr_ID} REFERENCIA INGREDIENTS
Ingredients substituibles
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi i una descripció:
INGREDIENTS (Ingr_ID, Nom)
SUBSTITUT(Ingr_ID1, Ingr_ID2) ON {Ingr_ID1} REFERENCIA INGREDIENTS I {Ingr_ID2} REFERENCIA INGREDIENTS
Locals de la cadena de pizzeries
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi i una descripció:
Per a traduir al model relacional una generalització-especialització hi ha diverses possibilitats:
1. Cada entitat es converteix en una relació. L’entitat generalitzada conté els atributs comuns i les especialitzacions tenen la clau, que fa referència a l’entitat generalitzada i els atributs específics.
LOCAL (Local_ID, Adreça, Telefon)
RESTAURANT (Local_ID, Capacitat) ON {Local_ID} REFERENCIA LOCAL
PER_EMPORTAR (Local_ID, Num_Motos) ON {Local_ID} REFERENCIA LOCAL
2. Tan sols es tradueixen les entitats especialitzades. Els atributs comuns es posen a les dues entitats especialitzades. Aquesta opció l’anterior en cas que les entitats especialitzades s’utilitzin més que la generalitzada i quan s’hagin d’establir relacions entre algunes entitats especialitzades independentment de les altres.
RESTAURANT (Local_ID, Adreca, Telefon, Capacitat)
PER_EMPORTAR (Local_ID, Adreca, Telefon, Num_Motos)
3. Es tradueix tot a una única entitat amb tots els atributs i amb un atribut addicional que indica el subtipus o especialització. És útil si hi ha pocs (o cap) atributs a les entitats especialitzades, altrament genera molts valors nuls:
LOCAL (Local_ID, Adreca, Telefon, Capacitat, Num_Motos, TipusLocal)
Comandes de pizzes
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi i una descripció:
COMANDA (Num_Comanda, Data)
LINIA_COMANDA (Num_Comanda, Numj_Linia, Producte, Quantitat) ON {Num_Comanda} REFERENCIA COMANDA
Empleats d'una pizzeria
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi:
Per a traduir al model relacional una generalització-especialització hi ha diverses possibilitats:
1. Cada entitat es converteix en una relació. L’entitat generalitzada conté els atributs comuns i les especialitzacions tenen la clau, que fa referència a l’entitat generalitzada i els atributs específics.
EMPLEAT (DNI, Nom, Telefon)
CUINER (DNI, Titulacio, Feina) ON {DNI} REFERENCIA EMPLEAT
CAMBRER (DNI, Torn) ON {DNI} REFERENCIA EMPLEAT
MOTORISTA (DNI, Any_Carnet) ON {DNI} REFERENCIA EMPLEAT
2. Tan sols es tradueixen les entitats especialitzades. Els atributs comuns es posen a les dues entitats especialitzades. Aquesta opció l’anterior en cas que les entitats especialitzades s’utilitzin més que la generalitzada i quan s’hagin d’establir relacions entre algunes entitats especialitzades independentment de les altres.
CUINER (DNI, Nom, Telefon, Titulacio, Feina)
CAMBRER (DNI, Nom, Telefon, Torn)
MOTORISTA (DNI, Nom, Telefon, Any_Carnet)
3. Es tradueix tot a una única entitat amb tots els atributs i amb un atribut addicional que indica el subtipus o especialització. És útil si hi ha pocs (o cap) atributs a les entitats especialitzades, altrament genera molts valors nuls:
EMPLEAT (DNI, Nom, Titulacio, Feina, Torn, Any_Carnet, Tipus_Empleat)
L'empleat del mes
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi:
CAMBRER (DNI, Torn)
COMANDA (Num_Comanda, Data, DNI) ON {DNI} REFERENCIA CAMBRER
Motoristes
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi:
MOTO (Matricula, Cilindrada, Propietat)
MOTORISTA (DNI, Any_Carnet, Matricula) ON {Matricula} REFERENCIA MOTO
Stock d'ingredients
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi:
LOCAL (Local_ID, Adreça, Telefon)
INGREDIENTS (Ing_ID, Nom)
DISPOSAR (Local_ID, Ingr_ID, Stock, Stock_min) ON {Local_ID} REFERENCIA LOCAL I {Ing_ID} REFERENCIA INGREDIENTS
Taules d'una pizzeria
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama, si no s’especifica explícitament, tenen com a mínim un codi:
RESTAURANT (Local_ID, Capacitat)
TAULA (Local_ID, Num_Taula, Cadires) ON {Local_ID} REFERENCIA RESTAURANT
Fer una reserva en una pizzeria
L’objectiu d’aquesta activitat és el d’aplicar els processos de traducció del model ER al model relacional.
Donat el model ER següent, feu-ne la traducció al model relacional, suposant que totes les entitats del diagrama tenen com a mínim un codi:
TAULA (Local_ID, Num_Taula, Cadires) ON {Local_ID} REFERENCIA RESTAURANT
CLIENT (DNI, Telefon)
RESERVA (Local_ID, Num_Taula, Data, Hora, DNI, Num_persones) ON {Local_ID, Num_Taula} REFERNCIA TAULA I {DNI} REFERENCIA CLIENT