Hi Ekki,
Ein Sonderwunsch gehört *immer* zu *genau einem* Bauvorhaben. Um welchen Kunden es sich handeln, muss nicht beim Sonderwunsch gespeichert werden, da der Kunde durch das Bauvorhaben eindeutig identifizierbar ist.
Für jeden an jedem Sonderwunsch beteiligten Handwerker gibt es in der n:m-Zuordnungstabelle einen Eintrag (sinnvollerweise legst Du dort einen UNIQUE-Constraint über die beiden Spalten "sw_id" und "hw_id" an).
Ok, wir kommen der Sache näher :) Besten Dank schon mal für deinen Vorschlag für eine Datenbankstruktur.
Ein Problem ist jetzt noch, dass es natürlich auch Bauvorhaben mit mehreren Einheiten geben kann. Bsp. Bau von 20 Eigentumswohnungen. Also müssten mehrere Sonderwünsche einem Bauvorhaben zugeordnet werden können, bzw. in einem Bauvorhaben wohnen mehrere Eigentümer, später mal :)
Ich denke, dazu müsste man dann noch zusätzlich eine Tabelle Einheiten anlegen. Ein Bauvorhaben mit X-Beliebigen Einheiten. Wenn ich dich richtig verstanden habe, sollte die Datenbank dann so aussehen, hoffe ich:
Tabelle: kunde
id | name | bv_id | einheit_id
---+----------------+-------+------------
1 | Max Mustermann | 1 | 1
Tabelle: bauvorhaben
id | name |
---+--------------+
1 | Testobjekt 1 |
Tabelle: einheit
id | name | bv_id
---+------------------+---------
1 | EG Wohnung links | 1
Tabelle: handwerker
id | name | ...
---+-----------+----
1 | Schreiner | ...
2 | Putzer | ...
3 | Maler | ...
Tabelle: sonderwunsch
id | text | bv_id | einheit_id
---+--------------------+-------+-----------
1 | Innentüre entfällt | 1 | 1
Tabelle: sonderwunsch2handwerker
id | sw_id | hw_id
---+-------+------
1 | 1 | 1
2 | 1 | 2
3 | 1 | 3
Lieg ich hiermit richtig?
Greetz
hossi