sql >> Database >  >> RDS >> Mysql

Dynamische tabel/entiteitsnamen in Leer 2

Vraag is oud, maar het kan nuttig zijn voor iemand.

Als loadClassMetada elke keer wordt aangeroepen, lijkt het erop dat dat probleem in uw code zit. Maar ik veronderstel dat die metadata door doctrine wordt gecached. In dat geval kunt u het rechtstreeks wijzigen, kijk dan naar het volgende codefragment, het zou moeten werken:

<?php
class FooController extends Controller {
  function fooAction() {
    $em = $this->getDoctrine()->getEntityManager();
    $cm = $em->getClassMetadata('FooBundle:FooEntity');
    $cm->setTableName('special_table_name');
    $repo = $em->getRepository('FooBundle:FooEntity');
    $entities = $repo->createQueryBuilder('f')
            ->setMaxResults(1)
            ->orderBy('f.id', 'desc')
            ->getQuery()
            ->getResult();
    return new Response('');
  }
}



  1. gegevens opslaan in een database met behulp van tekst bewerken en knop

  2. Hibernate 5:- org.hibernate.MappingException:onbekende entiteit

  3. Onderscheiden versus groeperen op basis van

  4. Retourneer alle externe sleutels die verwijzen naar een bepaalde tabel in SQL Server