私はファイル(おそらく実際には大きなファイル)を解析し、各文字列を別のエンティティに保存する必要があるプロジェクトに取り組んでいます。バンドルは、多くのファイルタイプ(CSV、XML、JSONなど)を扱う予定です。私は多くのデータをオブジェクトに永続化する最良の方法
$em2 = $this->getDoctrine()
->getEntityManager();
foreach ($Parser as $key => $value) {
$str_or[] = new StringOrigin();
$str_or[$key]->setSTORString($value);
/..
$em2->persist($str_or[$key]);
}
$em2->flush();
$ Paserがここにファイルから解析された文字列の配列である文字列の配列を返します。これらのタイプのそれぞれについてパーサを作成するつもりです。 StringOriginはエンティティです。エンティティマネージャを処理できるデータの量私はこれを正しい方法でやっていますか?そうでない場合はbach processing これをよりうまく処理できますか?また、DQLを使用せずにINSERTを1つしか実行できない方法はありますか?
ご回答いただきありがとうございます。私はパーサでさらにテストを行う必要があります。 Prepared SQL文を使用するのは悪くないでしょうか? – Wissem