Gyakorlaton megoldandó kötelező feladat!!! ------------------------------------------ Hozzunk létre mind a két adatbázisban (ullman, aramis) egy GYAK11 nevű 2 oszlopos táblát, amely azoknak a dolgozóknak a nevét és fizetését tartalmazza, akik JONES-nak alárendeltjei (a beosztottai, azok beosztottai stb.), és a belépési dátumuk (BELEPES) későbbi, mint JONES-é. Az eddig elkészített kötelező feladataikat ellenőrizni tudják a következő SQL lekérdezés futtatásával: SELECT object_name "TABLE", created FROM user_objects WHERE object_type='TABLE' AND object_name LIKE 'GYAK%' ORDER BY object_name; =========================================================================== Rekurzív lekérdezésekkel megoldható feladatok --------------------------------------------- /* START WITH CONNECT BY Írjunk meg egy procedúrát, amelyik a NIKOVITS.VAGYONOK tábla alapján kiírja azoknak a személyeknek a nevét, akikre igaz, hogy van olyan leszármazottjuk, akinek nagyobb a vagyona, mint az illető vagyona. */ CREATE OR REPLACE PROCEDURE gazdag_leszarmazott IS ... set serveroutput on execute gazdag_leszarmazott(); ----------------------------------------------------- /* Írjunk meg egy procedúrát, amelyik a NIKOVITS.VAGYONOK tábla alapján kiírja azoknak a személyeknek a nevét, vagyonát, valamint leszármazottainak átlagos vagyonát, akikre igaz, hogy a leszármazottainak átlagos vagyona nagyobb, mint az illető vagyona. A program tehát soronként 3 adatot ír ki: név, vagyon, leszármazottak átlagos vagyona */ CREATE OR REPLACE PROCEDURE gazdag_leszarmazottak IS ... set serveroutput on execute gazdag_leszarmazottak(); ----------------------------------------------------- /* Írjunk meg egy procedúrát, amelyik a NIKOVITS.JARATOK tábla alapján kiírja azoknak az irányított köröknek a csomópontjait (városait), amelyek a paraméterként megadott várossal kezdődnek és végződnek. Tetszőleges elválasztó karakter használható. Példa egy kiírásra: Dallas-Chicago-Denver-Dallas */ CREATE OR REPLACE PROCEDURE kor_kereso(kezdopont VARCHAR2) IS ... set serveroutput on execute kor_kereso('Denver'); ----------------------------------------------------- /* Írjunk meg egy procedúrát, amelyik a NIKOVITS.VAGYONOK tábla alapján kiírja azoknak a nevét és városát, akiknek legalább 2 olyan felmenőjük van, akiknek ugyanaz a városa, mint az illetőnek. */ CREATE OR REPLACE PROCEDURE felmeno2 IS ... set serveroutput on execute felmeno2(); -----------------------------------------------------