Pages

Friday, September 27, 2024

Асоцијација и типови асоцијации

 Асоцијација во контекст на моделирање на податоци и бази на податоци се однесува на релациите (врските) што постојат помеѓу два или повеќе ентитети. Асоцијацијата претставува како ентитетите се поврзани и како тие меѓусебно разменуваат информации.

Типови на асоцијации:

Постојат различни типови на асоцијации, кои најчесто се засноваат на кардиналноста на релациите, односно колку ентитети од едната страна на релацијата можат да се поврзат со колку ентитети од другата страна.

  1. Еден-спрема-еден (1:1) асоцијација:

    • Секој ентитет од една табела е поврзан со точно еден ентитет од друга табела.
    • Пример: Во база на податоци за вработени, секој вработен може да има точно еден службен компјутер, и секој службен компјутер може да биде доделен на точно еден вработен.
    • Пример:
      Табела Вработен: ИД_Вработен, Име
      Табела Компјутер: ИД_Компјутер, Модел
      Асоцијација: Секој вработен има точно еден компјутер, и секој компјутер му припаѓа на еден вработен.
  2. Еден-спрема-повеќе (1

    ) асоцијација:

    • Еден ентитет од една табела може да биде поврзан со повеќе ентитети од друга табела, но обратно не е можно (еднострана релација).
    • Пример: Еден професор може да предава на повеќе студенти, но секој студент има само еден професор за одреден предмет.
    • Пример:
      Табела Професор: ИД_Професор, Име
      Табела Студент: ИД_Студент, Име
      Асоцијација: Еден професор може да предава на повеќе студенти, но секој студент има само еден професор.
  3. Повеќе-спрема-повеќе (N

    ) асоцијација:

    • Повеќе ентитети од едната табела можат да бидат поврзани со повеќе ентитети од другата табела.
    • Пример: Еден студент може да се запише на повеќе курсеви, а еден курс може да биде посетуван од повеќе студенти.
    • Пример:
      Табела Студент: ИД_Студент, Име
      Табела Курс: ИД_Курс, Име на курс
      Асоцијација: Повеќе студенти можат да похаѓаат повеќе курсеви.

    За повеќе-спрема-повеќе релации обично се креира дополнителна релациона табела која ги содржи примарните клучеви од двата ентитета како надворешни клучеви.

Пример на асоцијации:

Во студентски информациски систем:

  • Студент и Професор можат да имаат еден-спрема-повеќе асоцијација (еден професор предава на повеќе студенти).
  • Студент и Курс можат да имаат повеќе-спрема-повеќе асоцијација (еден студент следи повеќе курсеви, и еден курс може да биде следен од повеќе студенти).

Асоцијациите помагаат да се моделираат релациите меѓу ентитетите и се основа за дизајнирање релациони бази на податоци.

No comments:

Post a Comment