Kaj so asociativne entitete?

V modelu entiteta-razmerje, kjer so podatki abstraktno in konceptualno predstavljeni v programskem inženiringu, so asociativne entitete en del modela. Relacijski modeli so pogosto izdelani tako, da predstavljajo podatke v bazi podatkov ali sistemu, kjer se uporabljajo za organizacijo podatkov v razumljivo in berljivo shemo. Entitete v relacijskem modelu lahko predstavljajo karkoli, vključno z ljudmi, kraji, predmeti, dogodki ali koncepti. Asociativne entitete so povezave, ki opisujejo odnos med dvema različnima entitetama. Te entitete imajo lahko relacije mnogo proti več, kar pomeni, da ima lahko ena od asociativnih entitet več odnosov in povezav z nadrejeno ali podrejeno entiteto.

Asociativne entitete posredujejo informacije o svojih atributih in njihovih povezavah. Štejejo se za entiteto, ker imajo atribute, in za odnos, ker povezujejo entitete skupaj. Te vrste entitet imajo zelo pogosto veliko odnosov in povezav, ker jih je mogoče pripisati, vendar imajo lahko neodvisen pomen od drugih entitet. Prav tako je dobra praksa v relacijskem modelu, da ima asociativna entiteta vsaj en atribut, ki se razlikuje od entitete identifikatorja. Asociativne entitete so lahko tudi udeleženci v odnosih, ločenih od odnosov povezanih entitet.

Primarni ključi bi morali biti tudi del asociativnih entitet, ker so identifikatorji, ki sodijo na določene tabele v relacijskem modelu. Čeprav lahko tabele vsebujejo samo enega, so primarni ključi kombinacije stolpcev, ki enolično določajo vrstice. Obstaja razlika med edinstvenimi ključi in primarnimi ključi, saj lahko primarni ključi uveljavijo omejitev »ni nič« v tabeli ali entiteti. Drug vidik, ki razlikuje primarne ključe od edinstvenih ključev, je, da so primarni ključi izbrani kot ključ največje ali prvega pomena. Primarni indeksi so ustvarjeni za upravljanje primarnih ključev ter za enostavno uporabo in uveljavljanje s strani upravitelja baze podatkov.

Asociativne entitete so vsebovane v povezovalnih tabelah in jih uporabljajo – tabele v relacijskem modelu, ki vsebujejo skupna polja iz dveh ali več drugih tabel. Povezovalne tabele se uporabljajo, ker lahko obravnavajo relacije veliko proti mnogo v določeni bazi podatkov. Eden od primerov baze podatkov, ki uporablja asociativno entiteto z uporabo povezovalne tabele, je vpis študentov v predmet. V tem primeru je tabela s podatki o študentih posredno povezana s tabelo s podatki o predmetih preko vmesne tabele, ki vsebuje podatke, ki so povezani s študentskimi in predmetnimi podatki iz povezovalnih tabel.