Удалить из таблицы, не влияя на иностранную стоимость

Когда я хочу удалить пользователя, мне не нужно удалять из compaines. Эти 2 объекта связаны с другим, который содержит идентификатор пользователя и идентификатор компании.

вот мои аннотации в сущности, с которыми я связываю пользователя и компанию (мог бы сделать это иначе, но есть некоторые другие атрибуты:

@ORM\ManyToOne(targetEntity="Admin\ManagementBundle\Entity\User", inversedBy="uc", cascade={"persist"})
private $user;


@ORM\ManyToOne(targetEntity="Admin\ManagementBundle\Entity\Company", inversedBy="uc", cascade={"persist"})
private $compani;

Когда я удаляю с EmtityManager()->remove($user); он удаляет все, что связано с этим пользователем.
Не смог найти ничего, что могло бы мне помочь.

Спасибо,

1

Решение

Убедитесь, что у вас есть КАСКАДИНГОВЫЕ УДАЛЕНИЯ включенный.
Все что нужно в этом случае

DELETE FROM MainTable
WHERE PrimaryKey = ???

Ваш движок базы данных позаботится об удалении соответствующих ссылочных записей.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector