Stoney: Konflikttabelle

Beitrag lesen

Hi,

Ich plane gerade den DB-Aufbau von einem Urlaubsplaner.
Dieser Urlaubsplaner beinhaltet ein Konfliktmanagment zwischen einzelnen Personen, die nicht zur selben Zeit Urlaub haben dürfen.
Und genau da fangen meine Überlegungen zu schwanken an.
db_person ist klar.

db_personen:

id name
1  kall
2  ulli
3  timy
4  jimy

folgendes personen dürfen nie zusammen urlaub nehmen:
kall + ulli
timy + jimy

Es gibt nämlich zwei möglichkeiten:

db_konlifkt_v1:

gruppe person(en)
1      1
1      2
2      3
2      4

//beim anlegen ob eine person nun darf oder nicht wird zunächst
SELECT gruppe ... WHERE person='$person'
ausgeführt und dann in einer schleife (falls eine person in mehreren gruppen) üperprüft welche personen konfliktpersonen sind.

db_konflikt_v2:
person kperson(en)
1      2
2      1
3      4
4      3

//Es wird für jede einzelne Person eine oder mehrere Konlfikt-Personen angelegt. Eine Abfrage wäre dann sehr einfach:
SELECT kperson(en) ... WHERE person='$person'
und fertig.

Welche vor und nachteile erkennt ihr?
Welche methoden gibt es noch?

Stoney