Kapcsolatok az adatbázison belül

Miután az adatbázisban minden témához létrehoztunk egy-egy táblát, meg kell mondani a Microsoft Access programnak, hogyan kell ezeket az információkat újból összerakni. Ennek első lépése az, hogy a táblák között kapcsolatokat definiálunk. Ezután létrehozhatunk lekérdezéseket, űrlapokat és jelentéseket, melyek segítségével egyszerre megjeleníthetünk olyan adatokat, amelyek különböző táblákban helyezkednek el.

Hogyan működnek a kapcsolatok?

A táblák mezőit úgy kell összehangolni, hogy ugyanazon rend szerint írják le a tárolt adatokat. Ezt az összehangolást a táblák között létesített kapcsolatok segítségével adjuk meg. A kapcsolat a kulcsmezők értékeit rendeli egymáshoz. A kulcsmezők általában a két táblában ugyanazzal a mezőnévvel rendelkeznek. A legtöbb esetben az egyik táblában szereplő kulcsrekord az ún. elsődleges kulcs, amely minden rekord szempontjából egyedi rekordazonosítást tesz lehetővé, a másik táblában pedig ez a külső kulcs.

Egy-a-többhöz kapcsolat

Az egy-a-többhöz kapcsolat a leggyakrabban használatos kapcsolati típus. Az egy-a-többhöz kapcsolatban az A tábla valamely rekordjához több rekord tartozhat a B táblában, de a B tábla valamennyi rekordjához csak egy-egy rekord tartozhat az A táblában.

Több-a-többhöz kapcsolat

Több-a-többhöz kapcsolat esetén az A tábla valamely rekordjához több rekord is tartozhat a B táblában, és a B tábla valamely rekordjához is több rekord tartozhat az A táblában. Ez a fajta kapcsolat csak úgy lehetséges, hogy definiálunk egy harmadik táblát, az ún. illesztőtáblát, melynek elsődleges kulcsa két mezőt tartalmaz: az A tábla és a B tábla külső kulcsát. A több-a-többhöz kapcsolat tehát válójában két egy-a-többhöz kapcsolat egy harmadik tábla részvételével.

Egy-az-egyhez kapcsolat

Egy-az-egyhez kapcsolat esetén az A tábla minden egyes rekordjához legfeljebb egy rekord tartozhat a B táblában, és a B tábla minden egyes rekordjához is csak legfeljebb egy rekord tartozhat az A táblában. Ez a fajta kapcsolat nem túl gyakran használatos, mert a legtöbb információ, amelyet ilyen módon írunk le, leírható egyetlen táblán belül is. Az egy-az-egyhez kapcsolat akkor lehet hasznos, ha egy sok rekordból álló táblát több kisebb, könnyebben kezelhető táblára kívánunk felosztani, ha egy tábla valamely részét adatvédelmi megfontolásból külön kívánjuk tárolni, vagy ha az egyik táblában olyan adatokat szeretnénk tárolni, amely a főtáblában csak bizonyos rekordokra érvényes.

Kapcsolat definiálása

A kapcsolat megadása úgy történik, hogy az összekapcsolandó táblákat hozzáadjuk a Kapcsolatok ablakhoz, majd az egyik tábla kulcsmezőjét áthúzzuk a másik tábla kulcsmezőjére.

A Microsoft Access által létrehozott kapcsolat típusa attól függ, hogy a kapcsolt mezők milyen szerepet töltenek be az eredeti táblában.

Egy-a-többhöz kapcsolat jön létre, ha a kapcsolt mezők közül csak az egyik elsődleges kulcs, illetve ha csak az egyiknek van egyedi indexe.

Egy-az-egyhez kapcsolat jön létre, ha mindkét kapcsolt mező elsődleges kulcs, illetve ha mindkettőnek van egyedi indexe.

A több-a-többhöz kapcsolat tulajdonképpen két egy-az-egyhez kapcsolat egy harmadik tábla részvételével, melynek elsődleges kulcsa két mezőből áll: a két másik tábla külső kulcsából.

Megjegyzés: Ha olyan mezőt húzunk át, amely nem elsődleges kulcs és nincs egyedi indexe, és olyan mezőre húzzuk, amely ugyancsak nem elsődleges kulcs és nincs egyedi indexe, határozatlan kapcsolat jön létre. Olyan lekérdezések esetén, melyek határozatlan kapcsolattal összekapcsolt táblákat tartalmaznak, az alapértelmezett illesztővonal jelenik meg a táblák között, de a hivatkozási integritás nem biztosított, és semmi sem garantálja, hogy a táblákban a rekordok egyediek lesznek.