Untitled

 avatar
unknown
plain_text
a month ago
1.1 kB
2
Indexable
DECLARE
    ximie VARCHAR(32); xnazwisko VARCHAR(32); xdataurodzenia DATE; xobywatelstwo VARCHAR(30); x_idObywatelstwo NUMBER;
    v_idosoba NUMBER; max_nrIndeksu NUMBER;
    CURSOR c_rekrutacja IS
    SELECT imie, nazwisko, DataUrodzenia, Obywatelstwo
        FROM Rekrutacja;
BEGIN
    open c_rekrutacja;

    loop
        fetch c_rekrutacja into ximie, xnazwisko, xdataurodzenia, xobywatelstwo;
        exit when c_rekrutacja%NOTFOUND;

        x_idObywatelstwo:=(SELECT IDPANSTWO from PANSTWO where PANSTWO = xobywatelstwo);

        INSERT INTO OSOBA(nazwisko, imie, DATAURODZENIA, IDPANSTWO)
            VALUES(xnazwisko, ximie, xdataurodzenia, x_idObywatelstwo)
            RETURNING IDOSOBA INTO v_idosoba;

        SELECT NVL(MAX(TO_NUMBER(SUBSTR(Trim(NrIndeksu), LENGTH(Trim(NrIndeksu))-1))), 0) + 1
        INTO max_nrIndeksu
        FROM STUDENT;

        INSERT INTO STUDENT(idosoba, nrindeksu, datarekrutacji)
        VALUES (v_idosoba, TO_CHAR(max_nrIndeksu), SYSDATE);

    end loop;

    CLOSE c_rekrutacja;
end;
Leave a Comment