Kezdőlap     AB2ea     AB2gyak (főmenü)     1.gyak      3.gyak  
2.gyak. Adattárolás, DBA-nézetek
    
G (gépes feladatok)
> G3. Adattárolással kapcsolatos fogalmak, DBA-nézetek  
> G4. Egyéb objektumok (pl. szinonima, adatbázis-kapcsoló) 
   

A gyakorlati foglalkozások az előadások anyagára épülnek
2.EA: Oracle rendszer komponensei. Fizikai tárolás szervezése.
Még néhány szó a RAID megoldásokról Raid.doc
Lekérdezések optimalizálása algebrai_opt.ppt (91-105 o.)
A fizikai fájlszervezés alapjai, kupac, hash (kiterjeszthető, lineáris) fizika.ppt (1-20 o.) 
   
-- előadáshoz kapcsolódó további olvasmány:
Molina-Ullman-Widom: Adatbázisrendszerek megvalósítása, Panem, 2001.
2.fej. Adattárolás (memóriahierarchia, lemezek, lemezhiba helyreállítása)
4.4.fej. Tördelőtáblázatok (hasítóindex szervezés, lineáris, kiterjeszthető) 
    

G3. Adattárolással kapcsolatos fogalmak, DBA-nézetek
DBA_TABLES, DBA_DATA_FILES, DBA_TEMP_FILES,
DBA_TABLESPACES, DBA_SEGMENTS, DBA_EXTENTS,
DBA_FREE_SPACE


Segédanyag: LogDB_Struct.pdf  + OracleDoc: Concepts
+ 02-DBA nézetek.pdf  + OracleDoc: Reference
   
3.01. Melyik táblatéren van az ORAUSER felhasználó dolgozo táblája? (DBA_TABLES)
   
3.02. Adjuk meg az adatbázishoz tartozó adatfile-ok (és temporális fájlok) nevét és méretét
         méret szerint csökkenő sorrendben. (DBA_DATA_FILES, DBA_TEMP_FILES)
   
3.03. Adjuk meg, hogy milyen táblaterek vannak létrehozva az adatbázisban,
         az egyes táblaterek hány adatfájlból állnak, és mekkora az összméretük.
         (tablater_nev, fajlok_szama, osszmeret) Vigyázat, van temporális táblatér is!
   
3.04. Mekkora a blokkok mérete a USERS táblatéren? (DBA_TABLESPACES)
   
3.05. Melyik a legnagyobb méretű tábla szegmens az adatbázisban (a tulajdonost is adjuk meg)
         és hány extensből áll? (A particionált táblakat ne vegyük figyelembe) (DBA_SEGMENTS)
   
3.06. Melyik a legnagyobb méretű index szegmens az adatbázisban és hány blokkból áll?
         (A particionált indexeket most ne vegyük figyelembe.)
   
3.07. Adjuk meg adatfájlonként, hogy az egyes adatfajlokban mennyi a foglalt hely
         összesen (írassuk ki a fájlok méretét is). (DBA_EXTENTS)
   
3.08. Melyik két felhasználó objektumai foglalnak összesen a legtöbb helyet az adatbázisban?
   
3.09. Van-e valamelyik felhasználónak olyan táblája, amelyik több adatfájlban is foglal helyet?
   
3.10. Válasszunk ki a fenti táblákból egyet (pl. nikovits.tabla_123) és adjuk meg, hogy
         ez a tábla mely adatfájlokban foglal helyet.
   
3.11. Írjunk meg egy PL/SQL procedúrát, amelyik kiírja, hogy a paraméterül  
         kapott tábla melyik fájlban mennyi helyet (hány adatblokkot) foglal el
               (Fájlnév, Méret) --> proc(tulajdonos, táblanév).
         Hívjuk meg az eljárást (’SH’, ’CUSTOMERS’) paraméterekkel.
   
Fel a lap tetejére (mai gyak témakörei)      Vissza az AB2gyak kezdőlapjára  

       
G4.
Egyéb objektumok (pl. szinonima, adatbázis-kapcsoló)
(DBA_SYNONYMS, DBA_SEQUENCES, DBA_DB_LINKS)
   
Segédanyagok: EgyébObjektumok.txt  + OracleDoc: SQL Language Reference
   
4.01. Szinonimák létrehozása és használata
        - HR, SH táblákhoz készítsünk szinonimákat és keressük meg a katalógustáblában.
   
4.02.  Adjuk ki az alábbi utasítást: SELECT * FROM szinonima1;
          majd a katalógustáblák lekérdezésével derítsük ki, hogy kinek melyik tábláját
          kérdeztük le. (Ha nézettel találkozunk, azt is fejtsük ki, hogy az mit kérdez le.)
 
4.03. Szekvencia létrehozása és használata
         - Előkészítés: Az orauser.emp és orauser.dept hozzuk létre (de üresen!) saját táblákat.
         - Hozzunk létre egy szekvenciát, amelyik az osztály azonosítókat generálja
           a számunkra. Minden osztály azonosító a 10-nek többszöröse legyen.
            (create sequence)
         - Vigyünk fel 3 új osztályt és osztályonként minimum 3 dolgozót a táblákba.
           Az osztály azonosítókat a szekvencia segítségével állítsuk elő, és ezt tegyük be
           a táblába. (Vagyis ne kézzel írjuk be az azonosítót.)
         - A felvitel után módosítsuk a 10-es osztály azonosítóját a köv.érvényes (generált)
           osztály azonosítóra. (Itt is a szekvencia segítségével adjuk meg, hogy mi lesz a
           következő azonosító.) A 10-es osztály dolgozóinak az osztályazonosító ertékét is
           módosítsuk az új értékre.
 
4.04. Hozzunk létre adatbázis-kapcsolót (database link) a tomx adatbázisban,
         amelyik a másik oradb adatbázisra mutat, majd keressük ki a megfelelő
         adatszótárnézetben az erről tárolt információt. -- Megjegyzés: Jelenleg a tomx
        Oracle 11g-s az oradb pedig Oracle 10g-s adatbázis. Az újabb verziójú tomx
        adatbázisból hozzunk létre kapcsolatot a korábbi verziójú oradb adatbázishoz!
            
                    CREATE DATABASE LINK oradb
        connect to <ehakod> identified by <jelszo>
        USING 'oradb';

   
         Az adatbáziskapcsoló segítségével adjuk meg olyan lekérdezést, amely mindkét
         adatbázis tábláit használja. A lekérdezések alapjául szolgáló táblák, lásd sema.pdf

                NIKOVITS.VILAG_ORSZAGAI TOMX adatbázis
        NIKOVITS.FOLYOK         ORADB adatbázis
 
         Az országok egyedi azonosítója a TLD (Top Level Domain) oszlop.
         Az ország hivatalos nyelveit vesszőkkel elválasztva a NYELV oszlop tartalmazza.
         A GDP (Gross Domestic Product -> hazai bruttó össztermék) dollárban van megadva.
         A folyók egyedi azonosítója a NEV oszlop.
         A folyók vízhozama m3/s-ban van megadva, a vízgyűjtő területük km2-ben.
         A folyó által érintett országok azonosítóit (TLD) a forrástól a torkolatig
         (megfelelő sorrendben vesszőkkel elválasztva) az ORSZAGOK oszlop tartalmazza.
         A FORRAS_ORSZAG és TORKOLAT_ORSZAG hasonló módon a megfelelő
         országok azonosítóit tartalmazza (egy folyó torkolata országhatárra is eshet, pl. Duna)
 
        Mely folyók érintik Csehországot? (Tegyük fel, hogy csak az ország nevét tudjuk,
        vagyis azt, hogy a nevében szerepel a 'cseh' karakterlánc kis vagy nagybetűkkel.)
       
       Mely országokon folyik keresztül a Nílus? Az országok nevét (!) a forrástól
       a torkolatig a megfelelő (!) sorrendben adjuk meg.
   
Fel a lap tetejére (mai gyak témakörei)      Vissza az AB2gyak kezdőlapjára