私には2つのテーブルがあり、これら2つは次のような関係にあります
class Lesson
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
class TicketUse
{
/**
*
* @ORM\ManyToOne(targetEntity="Acme\UserBundle\Entity\Lesson")
* @ORM\JoinColumn(name="lessonId", referencedColumnName="id")
*/
private $lessonId;
これら 2 つのテーブルの関係は次のとおりです。
Lesson の行が存在する場合、ticketUse の行が存在するか、または存在しません。
レッスンの行と常に組み合わせを持つ ticketUse の行が存在する場合。
レッスン行「DELETE FROM Lesson WHERE id = 1」を削除しようとすると
エラーを示します。
SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails
レッスンを削除すると、自動的にTicketUseも削除したいです。
両方を一緒に削除する良い方法はありますか?
それぞれに2つの書き込み削除文がありますか?