我有一对一的桌子。在我的 config/doctrine/schema.yml 中,我的两个表分别具有:
TableA:
#...
relations:
TableB: { onDelete: CASCADE, local: id, foreign: table_a_id }
等
TableB:
#...
relations:
TableA: { onDelete: CASCADE, local: table_a_id, foreign: id }
当我删除 TableA 元素时,TableB 中的相应元素也会自行删除。但这并不适用于其他方式。
如何在 Symfony 中进行一对一的相互删除?
@Pabloks:我理解,它将以我提出的简化案例进行。但实际上,至少还有第三张桌子。事实上,第一个表和其他两个表之间存在继承的概念。
TableA:
#...
relations:
TableB: { onDelete: CASCADE, local: id, foreign: table_a_id }
TableC: { onDelete: CASCADE, local: id, foreign: table_a_id }
TableB:
#...
relations:
TableA: { onDelete: CASCADE, local: table_a_id, foreign: id }
TableC:
#...
relations:
TableA: { onDelete: CASCADE, local: table_a_id, foreign: id }