Diferència entre revisions de la pàgina «M2 - Bases de dades / Proves OnLine UF4»

De wikiserver
Dreceres ràpides: navegació, cerca
(Es crea la pàgina amb «'''Entrega: Document amb totes les instruccions i captures de pantalla amb l'execució de les instruccions i la sortida corresponent.''' PizzaOnline necessita una ba...».)
 
 
(Hi ha una revisió intermèdia del mateix usuari que no es mostren)
Línia 7: Línia 7:
  
 
1) Objectes i taules d’objectes  (3,5 punts)
 
1) Objectes i taules d’objectes  (3,5 punts)
 +
 
1.1) (0,75 punts) Crea el tipus pizza amb un camp per cada un dels següents conceptes:
 
1.1) (0,75 punts) Crea el tipus pizza amb un camp per cada un dels següents conceptes:
- el nom de la pizza.
+
 
- el preu de la pizza de mida gran.
+
:- el nom de la pizza.
- el preu de la pizza de mida mitjana.
+
:- el preu de la pizza de mida gran.
- el preu de la pizza de mida petita.
+
:- el preu de la pizza de mida mitjana.
 +
:- el preu de la pizza de mida petita.
 +
 
 
I un mètode que a partir d’una mida (‘G’, ‘M’ o ‘P’) retorni el preu respectiu.
 
I un mètode que a partir d’una mida (‘G’, ‘M’ o ‘P’) retorni el preu respectiu.
  
 
1.2) (0,25 punts) Crea la taula carta de pizzes amb el seus camps:
 
1.2) (0,25 punts) Crea la taula carta de pizzes amb el seus camps:
- codi de la pizza (clau primaria)
+
 
- pizza del tipus pizza.
+
:- codi de la pizza (clau primaria)
 +
:- pizza del tipus pizza.
  
 
1.3) (0,75 punts) Insereix 3 pizzes a la taula carta de pizzes amb els preus respectius.
 
1.3) (0,75 punts) Insereix 3 pizzes a la taula carta de pizzes amb els preus respectius.
Línia 26: Línia 30:
 
1.6) (0,75 punts) Mitjançant un bloc PL/SQL presenteu la carta de pizzes:
 
1.6) (0,75 punts) Mitjançant un bloc PL/SQL presenteu la carta de pizzes:
  
NomPizza: <Nom Pizza>
+
:NomPizza: <Nom Pizza>
Preu Gran: <Preu Gran>  Preu Mitjana: <Preu Mitjana>  Preu  Petita: <Preu Petita>
+
:Preu Gran: <Preu Gran>  Preu Mitjana: <Preu Mitjana>  Preu  Petita: <Preu Petita>
...
+
:...
 
 
 
 
 
 
 
 
 
 
 
 
  
  
Línia 40: Línia 38:
  
 
2.1) (0.25 punts) Crea el tipus experiència amb dos camps: un per emmagatzemar l’ocupació i l’altre el temps que ha la va desenvolupar.
 
2.1) (0.25 punts) Crea el tipus experiència amb dos camps: un per emmagatzemar l’ocupació i l’altre el temps que ha la va desenvolupar.
 +
 
* Exemple d’experiència: «Ajudant de cuina» «2 anys i 3 mesos»
 
* Exemple d’experiència: «Ajudant de cuina» «2 anys i 3 mesos»
  
Línia 45: Línia 44:
  
 
2.3) (0.5 punt)Crea el tipus empleat amb un camp per cada un dels següents conceptes:
 
2.3) (0.5 punt)Crea el tipus empleat amb un camp per cada un dels següents conceptes:
- el codi d’empleat
+
 
- el nom i cognoms.
+
:- el codi d’empleat
- experiència de tipus darreres experiències.
+
:- el nom i cognoms.
I un mètode que retorni el codi d’empleat i el seu nom .
+
:- experiència de tipus darreres experiències.
 +
 
 +
:I un mètode que retorni el codi d’empleat i el seu nom .
  
 
2.4) (0,5 punt) Crea el tipus cuiner que hereti d’empleats. Afegeix-li un camp per recollir l’ofici actual. Sobreescriu el mètode d’empleats per a que es mostri també l’ofici (utilitza el mètode d’empleats).
 
2.4) (0,5 punt) Crea el tipus cuiner que hereti d’empleats. Afegeix-li un camp per recollir l’ofici actual. Sobreescriu el mètode d’empleats per a que es mostri també l’ofici (utilitza el mètode d’empleats).
Línia 58: Línia 59:
 
2.7) (0,75 punts) Afegeix els següents empleats:
 
2.7) (0,75 punts) Afegeix els següents empleats:
  
- dos empleats generals: el primer amb una experiència prèvia i el segon amb 2.
+
:- dos empleats generals: el primer amb una experiència prèvia i el segon amb 2.
- dos cuiners: amb 1 experiència prèvia i  amb diferents oficis.
+
:- dos cuiners: amb 1 experiència prèvia i  amb diferents oficis.
- dos repartidors: un amb 1 experiència prèvia i l’altra sense experiència. El primer que utilitzi com a vehicle la bicicleta i el segon la moto.
+
:- dos repartidors: un amb 1 experiència prèvia i l’altra sense experiència. El primer que utilitzi com a vehicle la bicicleta i el segon la moto.
  
 
2.8) (0,5 punts)Mostra les dades de tots els empleats utilitzant els mètodes.
 
2.8) (0,5 punts)Mostra les dades de tots els empleats utilitzant els mètodes.
  
 
2.9) (0,5 punts) Mostra les dades dels repartidors utilitzant el mètode propi.
 
2.9) (0,5 punts) Mostra les dades dels repartidors utilitzant el mètode propi.
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  
Línia 83: Línia 71:
  
 
3.1) (0.25 punts) Creeu el tipus línia de comanda amb un camp per cada concepte següent:
 
3.1) (0.25 punts) Creeu el tipus línia de comanda amb un camp per cada concepte següent:
- número de línia de la comanda
+
 
- número de la pizza
+
:- número de línia de la comanda
- mida de la pizza
+
:- número de la pizza
- quantitat de pizzes
+
:- mida de la pizza
 +
:- quantitat de pizzes
  
 
3.2) (0.25 punts) Crea el tipus taula de línies de comanda de tipus línies de comanda.
 
3.2) (0.25 punts) Crea el tipus taula de línies de comanda de tipus línies de comanda.
  
 
3.3) (0.5 punts) Crear la taula comandes amb un camp per a cada concepte següent:
 
3.3) (0.5 punts) Crear la taula comandes amb un camp per a cada concepte següent:
- número de la comanda
+
 
- data de la comanda
+
:- número de la comanda
- línies de la comanda → NESTED TABLE
+
:- data de la comanda
 +
:- línies de la comanda → NESTED TABLE
  
 
3.4) (0.75 punts) Inseriu 2 comandes amb les seves respectives línies de comandes. La primera 2 línies de comanda i la segona 3 línies de comanda.
 
3.4) (0.75 punts) Inseriu 2 comandes amb les seves respectives línies de comandes. La primera 2 línies de comanda i la segona 3 línies de comanda.
Línia 103: Línia 93:
 
3.7) (1 punt extra) Bloc PL/SQL: Mostreu la factura de la comanda 2.
 
3.7) (1 punt extra) Bloc PL/SQL: Mostreu la factura de la comanda 2.
 
Per exemple:
 
Per exemple:
 
+
<pre>
 
FACTURA: 2    DATA: 19/05/20
 
FACTURA: 2    DATA: 19/05/20
PIZZA    QTAT  MIDA  PREU/UNITAT       SUBTOTAL
+
PIZZA    QTAT  MIDA  PREU/UNITAT   SUBTOTAL
Hawaina         3         P                     8.50€                 25.50€
+
Hawaina     3   P           8.50€     25.50€
Funghi           3         M                   13.75€                 41.25€
+
Funghi     3   M           13.75€     41.25€
Funghi           1         G                   17.00€                 17.00€
+
Funghi     1   G           17.00€     17.00€
 
   
 
   
                                                              TOTAL:        83.75€
+
                          TOTAL:        83.75€
                                                      IVA:TOTAL:         8.38€
+
                      IVA:TOTAL:         8.38€
                                            TOTAL AMB IVA:        92.13€
+
                  TOTAL AMB IVA:        92.13€
 +
</pre>

Revisió de 11:31, 28 maig 2020

Entrega: Document amb totes les instruccions i captures de pantalla amb l'execució de les instruccions i la sortida corresponent.


PizzaOnline necessita una base de dades per gestionar les comandes i les entregues de les seves pizzes. Cal prepar-la.

0) Crea usuari i connexió a base de dades, atorga els permisos mínims ( connect i resource ). Connectat amb l'usuari que has creat.

1) Objectes i taules d’objectes (3,5 punts)

1.1) (0,75 punts) Crea el tipus pizza amb un camp per cada un dels següents conceptes:

- el nom de la pizza.
- el preu de la pizza de mida gran.
- el preu de la pizza de mida mitjana.
- el preu de la pizza de mida petita.

I un mètode que a partir d’una mida (‘G’, ‘M’ o ‘P’) retorni el preu respectiu.

1.2) (0,25 punts) Crea la taula carta de pizzes amb el seus camps:

- codi de la pizza (clau primaria)
- pizza del tipus pizza.

1.3) (0,75 punts) Insereix 3 pizzes a la taula carta de pizzes amb els preus respectius.

1.4) (0,5 punts) Mostrar el nom de les pizzes amb el preu de les pizzes mitjanes accedint directament al preu de la pizza i mitjançant el mètode.

1.5) (0,5 punts) Augmenta en un 10% el preu de totes les pizzes mitjanes:

1.6) (0,75 punts) Mitjançant un bloc PL/SQL presenteu la carta de pizzes:

NomPizza: <Nom Pizza>
Preu Gran: <Preu Gran> Preu Mitjana: <Preu Mitjana> Preu Petita: <Preu Petita>
...


2) Herència i col·leccions (3,75 Punts)

2.1) (0.25 punts) Crea el tipus experiència amb dos camps: un per emmagatzemar l’ocupació i l’altre el temps que ha la va desenvolupar.

  • Exemple d’experiència: «Ajudant de cuina» «2 anys i 3 mesos»

2.2) (0.25 punt) Crea el tipus darreres experiències com a col·lecció de 3 posicions de tipus experiència.

2.3) (0.5 punt)Crea el tipus empleat amb un camp per cada un dels següents conceptes:

- el codi d’empleat
- el nom i cognoms.
- experiència de tipus darreres experiències.
I un mètode que retorni el codi d’empleat i el seu nom .

2.4) (0,5 punt) Crea el tipus cuiner que hereti d’empleats. Afegeix-li un camp per recollir l’ofici actual. Sobreescriu el mètode d’empleats per a que es mostri també l’ofici (utilitza el mètode d’empleats).

2.5) (0,25 punt) Crea el tipus repartidor que hereti d’empleats. Afegeix-li un camp per recollir el vehicle que utilitza pels repartiments (bicicleta o moto) . Sobreescriu el mètode d’empleats per a que es mostri també el vehicle que utilitza.

2.6) (0,25 punts) Crea la taula de tipus empleat. Utilitza el codi de l’empleat com a clau principal.

2.7) (0,75 punts) Afegeix els següents empleats:

- dos empleats generals: el primer amb una experiència prèvia i el segon amb 2.
- dos cuiners: amb 1 experiència prèvia i amb diferents oficis.
- dos repartidors: un amb 1 experiència prèvia i l’altra sense experiència. El primer que utilitzi com a vehicle la bicicleta i el segon la moto.

2.8) (0,5 punts)Mostra les dades de tots els empleats utilitzant els mètodes.

2.9) (0,5 punts) Mostra les dades dels repartidors utilitzant el mètode propi.


3) NESTED TABLE (2,75 punts + 1 punt extra)

3.1) (0.25 punts) Creeu el tipus línia de comanda amb un camp per cada concepte següent:

- número de línia de la comanda
- número de la pizza
- mida de la pizza
- quantitat de pizzes

3.2) (0.25 punts) Crea el tipus taula de línies de comanda de tipus línies de comanda.

3.3) (0.5 punts) Crear la taula comandes amb un camp per a cada concepte següent:

- número de la comanda
- data de la comanda
- línies de la comanda → NESTED TABLE

3.4) (0.75 punts) Inseriu 2 comandes amb les seves respectives línies de comandes. La primera 2 línies de comanda i la segona 3 línies de comanda.

3.5) (0.5 punts) Mostreu només les línies de comanda de la comanada 1. Cada una en un registre.

3.6) (0.5 punts) Mostreu la quantitat, el nom de la pizza i la mida de les pizzes de la comanda 2. Cada una en un registre.

3.7) (1 punt extra) Bloc PL/SQL: Mostreu la factura de la comanda 2. Per exemple:

FACTURA: 2    DATA: 19/05/20
PIZZA    QTAT   MIDA   PREU/UNITAT    SUBTOTAL
Hawaina     3   P            8.50€      25.50€
Funghi      3   M           13.75€      41.25€
Funghi      1   G           17.00€      17.00€
 
                          TOTAL:        83.75€
                      IVA:TOTAL:         8.38€
                  TOTAL AMB IVA:        92.13€