如何准确地使用 onDelete = “SET NULL"?- 教义2

How exactly to use onDelete = quot;SET NULLquot; - Doctrine2(如何准确地使用 onDelete = “SET NULL?- 教义2)
本文介绍了如何准确地使用 onDelete = “SET NULL"?- 教义2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 Category 类包含这个:

I have a class Category containing this:

/**
 * @ORMOneToMany(targetEntity="Friend", mappedBy="category")
 * @ORMOrderBy({"name" = "ASC"})
 */
protected $friends;

和一个班级朋友:

 /**
 * @ORMManyToOne(targetEntity="Category", inversedBy="friends")
 * @ORMJoinColumn(name="category_id", referencedColumnName="id",  onDelete="SET NULL")
 */
protected $category;

我想要的是能够删除类别,无论这个类别是否有一些朋友,如果有 - 这个朋友的类别字段设置为NULL.

What I want is to be able to delete categories no matter if there are some friends from this category, and if there are - the category field for this friends to be set to NULL.

我尝试将 onDelete="CASCADE" 放入 ManyToOne 注释,然后放入 OneToMany,我尝试了上面显示的内容,我尝试使用 cascade={"remove"} 在 OneToMany 注释中,但没有任何效果!我也找不到例子.你能帮我吗?

I tried to put onDelete="CASCADE" to the ManyToOne annotation, then to the OneToMany, I tried what is shown above, I tried using cascade={"remove"} in the OneToMany annotation, and nothing worked! I couldn't find a example as well. Could you please help me?

推荐答案

这一定是一个疯狂的答案,但您是否更新了数据库架构?onDelete="SET NULL" 在数据库级别,它必须在 innoDB 上工作.

This must be a crazy answer but did you update database schema? onDelete="SET NULL" is on database level, it must work on innoDB.

这篇关于如何准确地使用 onDelete = “SET NULL"?- 教义2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)