Ich benutze Symfony 2.8.Symfony, Daten von em1 nach em2 verschieben
Ich habe eine riesige Tabelle mit viel Datsa, die ich nicht mehr brauche. Ich möchte Daten in einer anderen Datenbank mit einem Symfony-Befehl verschieben.
Ich habe 2 Einheiten Manager:
em_archive = mydb_archive
em_default = meinedb
Ich habe den Code:
$emDefault = $this->getContainer()->get('doctrine')->getManager('em_default');
$emArchive = $this->getContainer()->get('doctrine')->getManager('em_archive');
$repoArchive = $emDefault->getRepository('MyBundle\Datas', 'em_archive');
$repoDefault = $emDefault->getRepository('MyBundle\Datas', 'em_default');
$dataTest = $repoDefault->getOneDataTest();
$dataTest->setOldId($dataTest->getId());
$dataTest->setId(null);
$emArchive->persist($dataTest);
$emArchive->flush();
Mit dem Code, den ich den Fehler „Hinweis haben: Nicht definierter Index: 000000004618b9830000000172fdd8f3 "
Gibt es ein Problem mit einer meiner Entity-Links (onetomany, manytoone)?
können Sie versuchen, $ emDefault -> detach ($ datentest) kurz vor dem Setzen der IDs? – goto
Und bitte beachten Sie, dass der Entity Manager nicht für einen massiven Import/Export ausgelegt ist. Sie sollten dafür die DBAL-Verbindung verwenden – goto