【发布时间】:2023-04-06 15:07:01
【问题描述】:
我有两个实体:
Voucher
Support
这些实体有一个名为
的连接表 voucher_support
当我将 1000 个现有支持添加到新凭证时,它将在凭证_support 处向我的 SQL 服务器调用 1000 个 INSERT 查询。肯定有 50.000 也有 50.000 插入。
我怎样才能实现这一原则,只需进行一次 INSERT 并提高我的性能?
编辑:
我认为批量插入不是解决方案。 这是我当前的代码以便更好地理解:
$voucher = new Voucher();
$voucher->setCreatedAt(new \DateTime());
$supports = $this->em->getRepository('Support')->getOpen();
foreach($supports as $support){
// this generates for each support a INSERT in join table.
$voucher->addSupport($support);
}
$this->em->persist($voucher);
$this->em->flush();
【问题讨论】:
标签: php symfony doctrine-orm doctrine