Projekt bazy danych z wieloma zagnieżdżonymi tabelami

Mam pytanie dotyczące projektowania stołu. Mam rozwiązanie, które moim zdaniem powinno działać, ale nie działa.

Rozważ posiadanie dwóch Entities „Subject” i „Process”, oba z pewnymi atrybutami. Każdy „podmiot” może być powiązany z wieloma „procesami”. W zależności od tego, który „proces” został wybrany, istnieje różna liczba encji „własność procesu”. Innymi słowy, gdy użytkownik kojarzy „proces” z „podmiotem”, powinien być w stanie edytować tylko „właściwości”, które są z nim powiązane.

Ostatecznie chcę, aby użytkownik mógł robić 3 rzeczy:

Tworzenie nowych „procesów” i określanie powiązanego z nimi „Właściwości”Wymień wszystkie „procesy” określonego „podmiotu”, nawet jeśli nie ma z nim żadnych „właściwości”Skojarz „Proces” z „Podmiotem” i zezwól tylko na ocenę wstępnie zdefiniowanych „Właściwości”

Tak więc projekt tabeli powinien wyglądać następująco:

tblSubject = {SubjectID, ...}tblProcess = {ProcessID, ...}tblProcessProperty = {PropertyID, ...}tblRelationProcessProperty = {RelationProcessPropertyID, ProcessID, PropertyID}tblRelationSubjectProcessProperty = {RelationID, RelationProcessPropertyID, SubjectID, PropertyValue}

To oczywiście działa tak długo, jak długo istnieje „właściwość” powiązana z każdym „procesem”. Więc moim błędem nie jest bezpośrednie powiązanie „tematu” z „procesem”, ale wtedy nie mogę wyprostować projektu tabeli.

Każda pomoc jest doceniana.

questionAnswers(2)

yourAnswerToTheQuestion