Ich habe zwei Tabellen; um das Beispiel einfach zu machen, nennen wir sie lawnmower
und lawn
.So vermeiden Sie zirkuläre Abhängigkeit
- Der Rasenmäher mäht immer einen Rasen.
- Mehrere Rasenmäher können den gleichen Rasen mähen.
- Ein Rasen hat einen einzigen Rasenmäher, der für diesen Rasen verantwortlich ist.
- Ein Rasenmäher kann jedoch für 3 Rasen gleichzeitig Zeit verantwortlich sein.
Die intuitive Lösung:
- Rasenmäher Referenz Lassen Sie den Rasen es
- Let Rasen Referenz der verantwortliche Rasenmäher
Daraus ergibt sich eine zirkuläre Abhängigkeit mäht. Was ist die beste Lösung, um dies zu vermeiden? Ich überlege gerade einen responsiblefor
Tisch mit Fremdschlüsseln zu einem Rasen und einem Rasenmäher. Dies ermöglicht jedoch mehreren Rasenmähern, für den gleichen Rasen verantwortlich zu sein, was vorher nicht möglich war.
OOP-Probleme mit zirkulären Abhängigkeiten gelten nicht für Datenbanken. Es ist nichts falsch mit Ihrer intuitiven Lösung. – reaanb
Intuitiv wäre es auch unmöglich. Entweder kann nicht ohne das andere existieren. Ich wäre nie in der Lage, meinen ersten Rasenmäher oder Rasenmäher zu schaffen, weil sie sich gegenseitig brauchen. – Treeline
Dafür gibt es Transaktionen. – reaanb