symfony - 同一实体上的一对一映射删除问题 Symfony
问题描述
我有一个实体 Product 可以链接到相同类型的另一个产品(所以从 Product 到 Product 的一对一映射)。
当我尝试从数据库中删除产品时会出现问题,因为它具有外键。
执行“DELETE FROM product WHERE id = ?”时发生异常 带参数 [“25”]:SQLSTATE [23000]:完整性约束违规:1451 无法删除或更新父行:外键约束失败(
acme
.product
, CONSTRAINTFK_BAD80AF68031A592
FOREIGN KEY (linked_to_id
) REFERENCESproduct
(id
))
这就是我定义关系的方式
/**
* @ORM\OneToOne(targetEntity="App\Entity\Product", cascade={"persist", "remove"})
* @ORM\JoinColumn(name="linked_to_id", referencedColumnName="id", nullable=true, onDelete="SET NULL")
*/
private $linkedTo;
有什么想法可以设置关系以避免此 FK 删除问题吗?
解决方案
推荐阅读
- angular - 讨人喜欢的 rxjs 订阅者
- html - 纯 HTML/CSS 树形布局
- python - 当列长度不同时,将一个 pandas 列的值映射到另一列
- javascript - Wordpress 问题中可能存在的 jQuery
- python - (Python) 将 Playwright Page 对象传递给包装函数的函数装饰器
- sql - 打破 SQL 中的嵌套数据,跨多行的条件(类似于 R 中的 dcast)
- ios - 如何在 SwiftUI 上的最后更新位置开始手势?
- flutter - flutter 在flutter中传递两个API
- sql - 没有 ID 的一列上的 SQL 不同
- three.js - threejs - 有人可以向我解释一下 vertexColors 的使用吗?