editat perDarrera edicióDiferènciesRestaurar Revisió
daniel herrera10/04/2018 15:01
@@ -90,7 +90,8 @@
     DECLARE
       anim animal;
     BEGIN
-      SELECT deref(ref(p)) INTO anim FROM animals p WHERE p.nom = 'Velociraptor';
+      SELECT value(p) INTO anim FROM animals p WHERE p.nom = 'Velociraptor';
+      --SELECT deref(ref(p)) INTO anim FROM animals p WHERE p.nom = 'Velociraptor';
       DBMS_OUTPUT.PUT_LINE(anim.parla());
     END;
 
Restaurar
daniel herrera05/04/2018 17:21
@@ -94,7 +94,13 @@
       DBMS_OUTPUT.PUT_LINE(anim.parla());
     END;
 
-
+    DECLARE
+      anim animal;
+    BEGIN
+      SELECT deref(z.animal) INTO anim 
+      FROM zoo z WHERE z.animal.nom = 'Velociraptor';
+      DBMS_OUTPUT.PUT_LINE(anim.parla());
+    END;
 Continguts: 
 1.1 1.3 1.4 1.8 1.9 1.10
 Resultats d'aprenentatge: 
Restaurar
daniel herrera10/04/2015 15:43
@@ -85,6 +85,8 @@
     END;
     
     --Fer cridar el Velociraptor:
+    set serveroutput on;
+    exec DBMS_OUTPUT.ENABLE;
     DECLARE
       anim animal;
     BEGIN
Restaurar
daniel herrera11/04/2014 17:35
@@ -27,6 +27,74 @@
 
 Escriu un tall de codi per a fer parlar el Velociraptor.
 
+**Ajuda per a fer l'exercici**
+
+    :::SQL
+    CREACIÓ DEL TIPUS ANIMAL:
+    CREATE TYPE animal AS OBJECT (
+        nom VARCHAR(20),
+        potes NUMBER,
+        alsada NUMBER(5,2),
+        fressa VARCHAR(40),
+        MEMBER FUNCTION parla RETURN VARCHAR2);
+    /
+    CREATE OR REPLACE TYPE BODY animal AS
+        MEMBER FUNCTION parla RETURN VARCHAR2 IS
+        BEGIN
+            RETURN fressa;
+        END;
+    END;
+    /
+    
+    Crear taula d’animals:
+    CREATE TABLE animals OF animal;
+    
+    Inserir animals:
+    INSERT INTO animals VALUES(
+      animal('Gallina', 2, 26.9, 'COCOCOCOC'));
+    INSERT INTO animals VALUES(
+      animal('Conill', 4, 24.7, 'CRCRCRCR'));
+    INSERT INTO animals VALUES(
+      animal('Velociraptor', 4, 316.1, 'TEKTEKTEKT'));
+    INSERT INTO animals VALUES(
+      animal('Unicorn', 4, 145.9, 'BBBRRRR'));
+    
+    Crear taula zoo:
+    CREATE TABLE zoo (
+      chip NUMBER PRIMARY KEY,
+      animal REF animal,
+      dataEntrada DATE,
+      dataDefuncio DATE NULL);
+    
+    Inserir la gallina al zoo:
+    DECLARE
+      anim REF animal;
+    BEGIN
+      SELECT REF(p) INTO anim FROM animals p WHERE p.nom = 'Gallina';
+      INSERT INTO zoo VALUES (
+        343242454, anim, '24 Jun 1998', NULL);
+    END;
+    
+    
+    
+    
+    Inserir el Velociraptor al zoo:
+    DECLARE
+      anim REF animal;
+    BEGIN
+      SELECT REF(p) INTO anim FROM animals p WHERE p.nom = 'Velociraptor';
+      INSERT INTO zoo VALUES (
+        9695844, anim, '24 Jun 2003', NULL);
+    END;
+    
+    Fer cridar el Velociraptor:
+    DECLARE
+      anim animal;
+    BEGIN
+      SELECT deref(ref(p)) INTO anim FROM animals p WHERE p.nom = 'Velociraptor';
+      DBMS_OUTPUT.PUT_LINE(anim.parla());
+    END;
+
 
 Continguts: 
 1.1 1.3 1.4 1.8 1.9 1.10
Restaurar
daniel herrera11/04/2014 17:24
@@ -29,6 +29,6 @@
 
 
 Continguts: 
-1.1
+1.1 1.3 1.4 1.8 1.9 1.10
 Resultats d'aprenentatge: 
-1.a
+1.B 1.C 1.F 1.G
Restaurar
daniel herrera11/04/2014 16:25
@@ -1,6 +1,6 @@
 
 Bases de dades objectes-relacionals
-Taula d'objectes
+Oracle Objecte-Relacional - Els animals - Taula d'objectes
 Crea l'objecte **Animal** i la taula d'objectes **Animals**.
 
 Un animal té les següents propietats:
Restaurar
Consulteu nota legal i condicions