Andmebaaside projekteerimiseks kasutatavad mudelid
Andmebaaside projekteerimiseks kasutatavad mudelid
Andmebaaside projekteerimiseks kasutatavad mudelid
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
TTÜ: Andmebaasid I (2012) © Erki Eessaar<br />
a)<br />
b)<br />
<br />
Isik<br />
esitab<br />
+klient<br />
1 0..*<br />
+töötaja<br />
0..1 0..*<br />
kinnitab<br />
<br />
Tellimus<br />
<br />
Isik<br />
<br />
Töötaja<br />
<br />
Klient<br />
1<br />
esitab<br />
0..*<br />
<br />
Tellimus<br />
0..1<br />
kinnitab<br />
0..*<br />
Joonis 33 Alternatiivsete modelleerimisviiside näide.<br />
Variandis a on näidatud olemitüüpide rollid seosetüüpide kontekstis. Variandis<br />
b aga esitatakse rollid olemitüüpidena.<br />
Nagu näete, on variant a) kompaktsem. Variant b võiks olla eelistatum kui<br />
olemitüüpidel Töötaja ja/või Klient on oma spetsiifilisi atribuute või seosetüüpe<br />
(mis ei käi kõigi isikute kohta). Samuti lihtsustab variant b) kitsenduste<br />
esitamist. Näiteks, kui kehtib reegel, et iga isik peab olema kas töötaja või<br />
klient, aga ta ei tohi olla mõlemat korraga, siis saab üldistusseosele lisada<br />
kitsenduse {Mandatory; Or}.<br />
33