есть ли способ отключить ограничения symfony2/doctrine?


Я понимаю, что ограничения внешнего ключа отлично подходят для целостности базы данных и всего остального, но также это огромные накладные расходы на использование ограничений при работе с таблицами, которые исчисляются миллионами и растут.

Я хочу удалить ограничения внешнего ключа из своего приложения. В прошлых проектах symfony2 я удалял ограничения вручную, но я предполагаю, что, возможно, есть способ просто сказать symfony2 сделать это?

Если кто-нибудь знает, как это сделать в рамках, пожалуйста, позвольте мне знать:)

Редактировать:

Допустим, например, в отношениях ManyToMany он автоматически создает таблицу отношений с соответствующими индексами, но также накладывает ограничение внешнего ключа на оба столбца, или, если у меня есть отношение OneToMany, оно накладывает ограничение внешнего ключа на это отношение.

Я не хочу, чтобы создавались эти ограничения внешнего ключа.

Author: skrilled, 2014-12-12

1 answers

Найдено в JIRA Доктрины:

Вы можете отключить экспорт внешних ключей для определенных моделей:

User:
  attributes:
    export: tables
  columns:

Или с помощью php:

$userTable->setAttribute(Doctrine::ATTR_EXPORT, Doctrine::EXPORT_TABLES);

Теперь он будет экспортировать только определение таблицы и ни один из внешних ключей. Вы можете использовать: нет, таблицы, ограничения, плагины или все.

 2
Author: skrilled, 2014-12-16 20:21:31