データベース テーブルに新しいレコードを挿入しようとしましたが、これによりテーブル内のレコードが置き換えられ続けます。(現在、このテーブルには単一のレコードがあります)。理由はありますか?これが私のクエリです:
public function setExperimentData($name, $type, $description) {
$updateQuery = $this->repository->createQueryBuilder('ud')
->update()
->set('ud.name', $this->em->createQueryBuilder()->expr()->literal($name))
->set('ud.type', $this->em->createQueryBuilder()->expr()->literal($type))
->set('ud.description', $this->em->createQueryBuilder()->expr()->literal($description))
->getQuery();
$updateQuery->execute();
}
はい、私は次のことを試しました(実験()はエンティティです):
$experiment = new Experiments();
$experiment->setName($experimentName);
$experiment->setDescription($experimentDescription);
$experiment->setPrimaryinvestigator($primaryInvestigator);
次に、次のエラーが表示されます。
キャッチ可能な致命的なエラー: Test\HelloBundle\Entity\Experiments::setPrimaryinvestigator() に渡される引数 1 は、Test\HelloBundle\Entity\Users のインスタンスである必要があります
エンティティ クラスの主な調査員のセッターは次のとおりです。
public function setPrimaryinvestigator(\Test\HelloBundle\Entity\Users $primaryinvestigator = null)
{
$this->primaryinvestigator = $primaryinvestigator;
return $this;
}
私は何を間違っていますか?
アップデート:
渡された整数です。E,g, 1 は PrimaryInvestigator の ID です。