Doktrin 2: Verständnis der Löschkaskade
Das Konzept der Löschkaskade in Doctrine2 ermöglicht das automatische Löschen von untergeordneten Datensätzen, wenn der übergeordnete Datensatz aktiviert ist wird gelöscht. Diese Funktion stellt die Datenintegrität sicher, indem sie die referenzielle Integrität aufrechterhält.
Implementierung der On-Delete-Kaskade in Doctrine2
Um die On-Delete-Kaskade zu implementieren, gibt es zwei Ansätze:
Object-Relational Mapping (ORM)-Ebene:
Datenbankebene:
Korrigieren Ihrer Entitäten
In Ihrem Beispiel haben Sie den Ansatz auf ORM-Ebene verwendet, aber das Attribut onDelete="CASCADE" in der Join-Spalte übersehen. Um dies zu beheben, ändern Sie die Child.php-Entität wie folgt:
<code class="php">/** * @ORM\ManyToOne(targetEntity="Father", cascade={"remove"}) * @ORM\JoinColumn(name="father_id", referencedColumnName="id", onDelete="CASCADE") * * @var Father */ private $father;</code>
注意事項
Das obige ist der detaillierte Inhalt vonWie kann die Löschkaskade in Doctrine2 ordnungsgemäß implementiert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!