Diferència entre revisions de la pàgina «DAW-M2-UF4-Banc de Solucions»

De wikiserver
Dreceres ràpides: navegació, cerca
(Exercici 1)
 
(Hi ha 3 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
==Exercici 1==
+
==Pràctica 1: Tipus objecte i taules d'objectes==
  
*Creeu un tipus d'objecte anomenat Adreça amb els atributs carrer varchar2(25), ciutat varchar2(20) i codi_postal number(5).
+
===Exercici 1===
  
 +
*Creeu un tipus d'objecte anomenat Adreça_complerta amb els atributs carrer varchar2(25), ciutat varchar2(20) i codi_postal number(5).
 +
<!--
 
<source lang="sql">
 
<source lang="sql">
CREATE OR REPLACE TYPE Adreça
+
CREATE OR REPLACE TYPE Adreça_complerta
 
AS OBJECT(
 
AS OBJECT(
 
carrer varchar2(25),  
 
carrer varchar2(25),  
Línia 11: Línia 13:
 
);
 
);
 
</source>
 
</source>
 +
-->
  
 
*Creeu un tipus d'objecte anomenat Persona amb els atributs codi number(5), nom varchar2(25), adreça adreça_complerta i data_neix date.
 
*Creeu un tipus d'objecte anomenat Persona amb els atributs codi number(5), nom varchar2(25), adreça adreça_complerta i data_neix date.
 +
<!--
 +
<source lang="sql">
 +
CREATE OR REPLACE TYPE Persona
 +
AS OBJECT(
 +
codi number,
 +
nom varchar2(25),
 +
adreça adreça_complerta,
 +
data_neix date
 +
);
 +
</source>
 +
-->
  
 
*Creeu una taula d'alumnes de tipus persona.
 
*Creeu una taula d'alumnes de tipus persona.
 +
<!--
 +
<source lang="sql">
 +
CREATE TABLE alumnes OF Persona;
 +
</source>
 +
-->
  
*Afegiu dos alumnes amb els següents dades:
+
*Afegiu dos alumnes amb totes les dades, diferents ciutats:
  
:-  1, 'Sergi','Gran Via 127','Barcelona',08038, '19-2-1992'
+
:-  1, 'Sergi','Avd. Gran Via 127','Barcelona',08038, '19-2-1992'
 
:-  2, 'Pep', 'c/ Doctor Serrano 5', 'guadalajara', 08011, '18-7-1991'
 
:-  2, 'Pep', 'c/ Doctor Serrano 5', 'guadalajara', 08011, '18-7-1991'
 +
<!--
 +
<source lang="sql">
 +
INSERT INTO alumnes VALUES(1,'Sergi',Adreça_complerta('Avd. Gran Via 127','Barcelona',08039),'19-2-1992');
  
*Mostreu el nom, la ciutat i el carrer de l'alumne amb el nom Sergi.
+
INSERT INTO alumnes VALUES(2,'Pep',Adreça_complerta('c/ Doctor Serrano 5','Guadalajara',08039),'18-7-1991');
 +
</source>
 +
-->
  
*Poseu la ciutat guadalajara en mayúscules.
+
*Mostreu el nom, la ciutat i el carrer de tots els alumnes.
 +
<!--
 +
<source lang="sql">
 +
SELECT al.nom, al.adreça.ciutat, al.adreça.carrer FROM alumnes al;
 +
</source>
 +
-->
  
*Elimineu els alumnes de guadalajara.
+
*Poseu les ciutats en majúscules (funció upper()).
 +
<!--
 +
<source lang="sql">
 +
UPDATE Alumnes al
 +
SET al.adreça.ciutat = upper(al.adreça.ciutat);
 +
</source>
 +
-->
 +
*Elimineu els alumnes d'una ciutat, utilitzant el nom de la ciutat.
 +
<!--
 +
<source lang="sql">
 +
DELETE FROM Alumnes al WHERE al.adreça.ciutat='Guadalajara';
 +
</source>
 +
-->
  
==Exercici 2==
+
===Exercici 2===
  
 
*Creeu un tipus d'objecte anomenat adreça_t amb els atributs atributos carrer varchar2(25), ciutat varchar2(20), provincia varchar2(20) i codi_postal number(5).
 
*Creeu un tipus d'objecte anomenat adreça_t amb els atributs atributos carrer varchar2(25), ciutat varchar2(20), provincia varchar2(20) i codi_postal number(5).

Revisió de 12:33, 22 abr 2021

Pràctica 1: Tipus objecte i taules d'objectes

Exercici 1

  • Creeu un tipus d'objecte anomenat Adreça_complerta amb els atributs carrer varchar2(25), ciutat varchar2(20) i codi_postal number(5).
  • Creeu un tipus d'objecte anomenat Persona amb els atributs codi number(5), nom varchar2(25), adreça adreça_complerta i data_neix date.
  • Creeu una taula d'alumnes de tipus persona.
  • Afegiu dos alumnes amb totes les dades, diferents ciutats:
- 1, 'Sergi','Avd. Gran Via 127','Barcelona',08038, '19-2-1992'
- 2, 'Pep', 'c/ Doctor Serrano 5', 'guadalajara', 08011, '18-7-1991'
  • Mostreu el nom, la ciutat i el carrer de tots els alumnes.
  • Poseu les ciutats en majúscules (funció upper()).
  • Elimineu els alumnes d'una ciutat, utilitzant el nom de la ciutat.

Exercici 2

  • Creeu un tipus d'objecte anomenat adreça_t amb els atributs atributos carrer varchar2(25), ciutat varchar2(20), provincia varchar2(20) i codi_postal number(5).
  • Creeu un tipus d'objecte anomenat client_t amb els atributs clinum number(10), clinom varchar2(20), carrer adreça_t, telefon number(9) i data date.
  • Creeu una taula d'objectes anomenada clients_any_tab de tipus client_t amb clau primaria clinum.
  • Creeu una taula anomenada clients_antics_tab amb els atributs any number(4) i client client_t.
  • Afegiu 3 clients a la taula clients_any_tab i 3 més a la taula clients_antics_tab (codis clients 1, 2, ...).
  • Mostreu el nom del client i el codi postal pels clients d'un carrer concret de la taula clients_any_tab.
  • Mostreu l'any, nom del client i codi postal pels clients antics d'un carrer i codi postal concret de la taula clients_antics_tab.
  • Actualitzeu el número de telèfon i el codi postal del client amb codi client 2 de la taula clients_any_tab.
  • Suprimiu els clients d'un carrer concret de la taula clients_any_tab.
  • Suprimiu els clients d'un carrer concret de la taula clients_antics_t.