Mysql SQLSTATE[23000],同时向条令2和Symfony 2添加3个实体

Mysql SQLSTATE[23000],同时向条令2和Symfony 2添加3个实体,mysql,symfony,doctrine-orm,Mysql,Symfony,Doctrine Orm,我创建了3个实体: , , 在我尝试添加任何“答案”之前,一切都很顺利,然后我得到一个例外: [PDOException] SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`ankieter`.`answer`, CONSTRAINT `FK_DD714F131E27F6BF` FOREIG

我创建了3个实体:

  • ,
  • ,
在我尝试添加任何“答案”之前,一切都很顺利,然后我得到一个例外:

[PDOException]  
SQLSTATE[23000]:
Integrity constraint violation: 
1452 Cannot add or update a child row: 
a foreign key constraint fails 
(`ankieter`.`answer`, CONSTRAINT `FK_DD714F131E27F6BF` FOREIGN KEY (`question_id`) REFERENCES `Question` (`id`)) 

编辑: 当我用PhpMyAdmin导出我的DB结构时,删除关于外键的信息并将结构重新导入,一切都很好(我能够将数据添加到“应答”表)。
外键可能有什么问题?

我认为您应该尝试调用
flush()
创建每个问题。

尝试将
cascade={“persist”}
添加到问题实体中的答案定义中

@ORM\OneToMany(targetEntity="Answer", mappedBy="question", cascade={"persist"})
以及回答实体中的问题定义

@ORM\ManyToOne(targetEntity="Question", inversedBy="answers", cascade={"persist"})
现在,条令应该能够以正确的顺序保留所有条目