Académique Documents
Professionnel Documents
Culture Documents
Crear un tipo de objetos llamado MiembroEscolar con las siguientes atributos: codigo, dni,
nombre, apellidos, sexo y fecha_nac.
codigo INTEGER,
dni VARCHAR2(9),
nombre VARCHAR2(20),
apellidos VARCHAR2(35),
sexo VARCHAR2(1),
fecha_nac DATE
) NOT FINAL;
2. Crea, como tipo heredado de MiembroEscolar, el tipo de objeto Profesor. Los atributos
para este tipo heredado serán: especialidad y antigüedad.
especialidad VARCHAR2(25),
antiguedad INTEGER
);
3. Crear un método constructor para el tipo de objetos Profesor, en el que se indiquen como
parámetros el código, nombre, primer apellido, 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 entre ellos.
especialidad VARCHAR2(25),
antiguedad INTEGER
);
/
CREATE OR REPLACE TYPE BODY Profesor AS
BEGIN
SELF.codigo := codigo;
SELF.nombre := nombre;
SELF.especialidad := especialidad;
RETURN SELF.apellidos
END;
END;
4. Dentro del código del ejercicio 3, crear un método llamado getNombreCompleto para el
tipo de objetos Profesor que permita obtener su nombre completo con el formato apellidos
nombre.
especialidad VARCHAR2(25),
antiguedad INTEGER
);
BEGIN
SELF.codigo := codigo;
SELF.nombre := nombre;
SELF.especialidad := especialidad;
RETURN SELF.apellidos
END;
BEGIN
END getNombreCompleto;
END;
5. Crear el tipo de objeto Cursos con los siguientes atributos: codigo, nombre, max_Alumn,
fecha_Inic, fecha_Fin y num_Horas.
codigo INTEGER(9),
nombre VARCHAR2(25),
apellidos VARCHAR2(50),
max_Alumn NUMBER(2),
fecha_Inic DATE,
fecha_Fin DATE,
num_Horas INTEGER
);
6. Crear un método MAP llamado ordenarCursos para el tipo Cursos. Este método debe
comparar entre cursos en función de su orden alfabético.
codigo INTEGER(9),
nombre VARCHAR2(25),
apellidos VARCHAR2(50),
max_alumn NUMBER(2),
fecha_inic DATE,
fecha_fin DATE,
num_horas NUMBER,
);
IS
BEGIN
END ordenarCursos;
END;
7. Crear una colección VARRAY llamada ListaCursos en la que se puedan almacenar hasta 10
objetos Cursos.
DECLARE
BEGIN
V_lista(4) := 'DAM1A';
V_lista(5) := 'DAW1A';
V_lista(6) := 'DAM2A';
END;
/8. Crea, como tipo heredado de MiembroEscolar, el tipo de objeto Alumno.
Curso VARCHAR2(25),
Grupo VARCHAR2(5)
);
/9. Crear una tabla Profesorado de objetos Profesor, e insertar en dicha tabla dos objetos
Profesor.
DECLARE
prof_1 Profesor;
prof_2 Profesor;
BEGIN
prof_1 := NEW Profesor(6, '123456789', 'Mari Puri', 'De Los Ajones', 'F', '26/04/1969',
'Lenguaje de Marcas', 7);
prof_2 := NEW Profesor(8, '987654321', 'Pepito', 'De los palotes', 'H', '23/07/1966',
'Bases de datos', 5);
END;