-------------------------------------------------------------------------------
--aufgabe 2a
--funktionskopf einfügen, kann alternativ auch direkt in der typdefinition gemacht werden
--aber da diese am anfang steht wrid das hier per alter gemacht
ALTER TYPE pruefungsordnung_t
ADD MEMBER FUNCTION create_student(matnr number, name varchar2, vorname varchar2)
RETURN student_t
CASCADE;
--funktionskörper erstellen
CREATE OR REPLACE TYPE BODY pruefungsordnung_t AS
MEMBER FUNCTION create_student(matnr number, name varchar2, vorname varchar2)
RETURN student_t
AS
student student_t;
BEGIN
-- student object erstellung
student := student_t(matnr, name, vorname, ref(self), null, null, null, null);
-- in die db stellen
INSERT INTO student_tab VALUES(student);
-- zurückgeben
RETURN student;
END;
END;
--Select * from student_tab WHERE matrikelnummer = pruefungsordnung_tab.create_student(666,'dampf','hans).Matrikelnummer;