CFGS DAM BASES DE DATOS TAREA 7
SET serveroutput ON
-- ACTIVIDAD 1.1 Crea el tipo de objetos "MiembroEscolar" con los siguientes atributos:
CREATE OR REPLACE TYPE MiembroEscolar AS OBJECT (
codigoINTEGER,
dni VARCHAR2(10),
nombre VARCHAR2(30),
apellidos VARCHAR2(30),
sexo VARCHAR2(1),
fecha_nac DATE
) NOT FINAL;
/
-- ACTIVIDAD 1.2 Crea, como tipo heredado de "MiembroEscolar", eltipo de objeto "Profesor" con los siguientes atributos:
CREATE OR REPLACE TYPE Profesor UNDER MiembroEscolar (
especialidad VARCHAR2(20),
antiguedad INTEGER,
-- Declaración método constructor(actividad 2)
CONSTRUCTOR FUNCTION Profesor(
codigo INTEGER,
nombre VARCHAR2,
apellido1 VARCHAR2,
apellido2 VARCHAR2,
especialidad VARCHAR2)
RETURN SELF AS RESULT,
-- Método para obtener el nombrecompleto (actividad 3)
MEMBER FUNCTION getNombreCompleto RETURN VARCHAR2
);
/
-- ACTIVIDAD 1.3 Crea el tipo de objeto "Cursos" con los siguientes atributos:
CREATE OR REPLACE TYPE Cursos ASOBJECT (
codigo INTEGER,
nombre VARCHAR2(20),
refProfe REF Profesor,
max_Alumn INTEGER,
fecha_Inic DATE,
fecha_Fin DATE,
num_Horas INTEGER
-- metodo MAP (actividad 8)
MAP MEMBER FUNCTIONordenarCursos RETURN VARCHAR2
);
/
CREATE OR REPLACE TYPE BODY Cursos AS
MAP MEMBER FUNCTION ordenarCursos RETURN VARCHAR2 IS
np Profesor;
BEGIN
SELECT DEREF(refProfe) INTO np FROM Dual;
RETURNnp.getNombreCompleto;
END ordenarCursos;
END;
-- ACTIVIDAD 1.4 Crea, como tipo heredado de "MiembroEscolar", el tipo de objeto "Alumno" con los siguientes atributos:
CREATE OR REPLACE TYPE Alumno UNDERMiembroEscolar (
cursoAlumno Cursos
);
/
/* ACTIVIDAD 2. Crea un método constructor para el tipo de objetos "Profesor", en el que se indiquen como parámetros el código,
nombre, primerapellido, segundo apellido y especialidad. Este método debe asignar al atributo "apellidos" los datos de primer
apellido y segundo apellido que se han pasado como parámetros, uniéndolos con un espacio...
Regístrate para leer el documento completo.