Php 原则2是否要求定义外键?

Php 原则2是否要求定义外键?,php,doctrine-orm,Php,Doctrine Orm,我有一个关系数据库,但是,没有定义任何外键,而且许多表不是InnoDB,因此无论如何都不能支持外键 我想在这个数据库上开始试验Doctrine,但是文档中有很多外键的参考,所以我不确定这是否可行 我很担心潜入并将表存储引擎更改为InnoDB,并定义大量外键,因为如果不需要的话,我不想影响性能 条令是否要求定义外键以管理实体之间的关联 如果它不是必需的,而是可选的,那么如果我没有定义外键,我会牺牲原则的哪些特性 如果为实体定义一些关联映射,它可能会自动转换为外键 如果您也希望在数据库中使用这些

我有一个关系数据库,但是,没有定义任何外键,而且许多表不是
InnoDB
,因此无论如何都不能支持外键

我想在这个数据库上开始试验Doctrine,但是文档中有很多外键的参考,所以我不确定这是否可行

我很担心潜入并将表存储引擎更改为
InnoDB
,并定义大量外键,因为如果不需要的话,我不想影响性能

  • 条令是否要求定义外键以管理实体之间的关联
  • 如果它不是必需的,而是可选的,那么如果我没有定义外键,我会牺牲原则的哪些特性

如果为实体定义一些关联映射,它可能会自动转换为外键

如果您也希望在数据库中使用这些外键,则必须使用CLI创建模式

有关使用cli的更多信息:

您没有理由切换到InnoDB以获取原则

  • 没有
  • 我发现用于更新和生成数据库模式的Doctrine CLI工具通常会尝试使用外键生成SQL。您可以手动设置数据库,或修改它生成的代码,以避免这种情况
  • 所以,,这不是问题