6.10. Feladatok

  1. Adja meg a 6.5. alfejezetben felírt példa lekérdezések eredményeit, ha azokat a 5.4. ábrán látható adatbázis-állapotra alkalmazzuk!

  2. Tekintse a 6.7. ábrán látható KÖNYVTÁR relációs adatbázissémát, amelyet könyvek, olvasók és kölcsönzések nyomon követésére használhatunk. A hivatkozási integritási megszorításokat — az 5.5. ábra jelöléseihez hasonlóan — irányított élek jelzik a 6.7. ábrán.

    6.7. ábra - Relációs adatbázisséma egy KÖNYVTÁR adatbázishoz.

    Relációs adatbázisséma egy KÖNYVTÁR adatbázishoz.


    Írjon relációs kifejezéseket a következő lekérdezésekhez:

    1. Az elveszett törzs című könyvnek hány példányával rendelkezik a „Móra Ferenc” fiókkönyvtár?

    2. Az elveszett törzs című könyvnek hány példányával rendelkeznek az egyes fiókkönyvtárak?

    3. Kérdezze le az összes olyan olvasó nevét, akinél nincsen egyetlen kikölcsönzött könyv sem!

    4. Az összes olyan könyv esetén, amelyet a „Móra Ferenc” fiókkönyvtárból kölcsönöztek ki, és amelyeknél a Lejárat_dátuma a mai nap, kérdezze le a könyv címét, valamint az olvasó nevét és lakcímét!

    5. Minden egyes fiókkönyvtár esetén kérdezze le a fiókkönyvtár nevét és azoknak a könyveknek a darabszámát, amelyeket onnan (abból a fiókkönyvtárból) kölcsönöztek ki!

    6. Kérdezze le minden olyan olvasó nevét, lakcímét és kikölcsönzött könyveinek a darabszámát, akik ötnél több könyvet kölcsönöztek ki!

    7. Minden olyan könyv esetén, amelynek a szerzője (vagy társszerzője) Stephen King, kérdezze le a címet és azt, hogy hány példánnyal rendelkezik belőle a „Központi Könyvtár” nevű fiókkönyvtár!

  3. Mutassa meg, hogy hogyan adhatók meg a következő relációalgebrai műveletek a rekord alapú, illetve a tartomány alapú relációkalkulusban!

    1. σ A=C (R(A, B, C))

    2. πA, C(R(A, B, C))

    3. R(A, B, C) * S(C, D, E)

    4. R(A, B, C) ∪ S(A, B, C)

    5. R(A, B, C) ∩ S(A, B, C)

    6. R(A, B, C) − S(A, B, C)

    7. R(A, B, C) × S(D, E, F)

    8. R(A, B) ÷ S(A)

  4. Döntse el, hogy igazak-e vagy sem az alábbi következtetések:

    1. NOT (P(x) OR Q(x)) → (NOT (P(x))) AND (NOT (Q(x)))

    2. NOT (∃x) (P(x)) → ∀x (NOT (P(x)))

    3. (∃x) (P(x)) → ∀x (P(x))