我有一个 67352 行的文件。一行是一个名字。我正在使用 foreach 批量插入这些名称。在这 67352 条中,只有 52262 条记录在使用 100 的批大小时被持久化到数据库中。如果批大小较大,则保留的文档较少,如果较小,则保留更多的文档,但我从未获得所有文档坚持。
odm 的版本是 1.0.0beta3,我也用 1.0.0rc1 尝试过,结果相同。
代码如下所示:
$batchSize = 100;
foreach ($data as $name)
{
$doc = new \SomeDocument;
$doc->setName($name);
$dm->persist($doc);
$i++;
if ($i % $batchSize == 0)
{
$dm->flush();
$dm->clear();
}
}
$dm->flush();
谁能告诉我怎么了?谢谢