我的项目中有两个数据库。
第一个数据库名为:global
第二个数据库名为:first_db
全局数据库有一个表和Car
first_db数据库有表Moto
和。Items
Bus
Ship
在帖子下方,您可以看到表格项目的注释。
* @ORM\Table(name="Items")
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="type", type="string")
* @ORM\DiscriminatorMap( {
* "car" = "Project\ItemBundle\EntityGlobal\Car",
* "moto" = "Project\ItemBundle\EntityGlobal\Moto",
* "bus" = "Bus",
* "ship" = "Ship",
* }
* )
当我使用 DQL 创建查询时,它不理解这一点car
并且moto
在另一个数据库中。如果实体Car
并Moto
使用此方法设置注释,我已经找到了一个 beta 解决方案
* @ORM\Table(name="global.Moto")
* @ORM\Table(name="global.Car")
在更新架构上我没有问题,但它不是很安全。我知道我可以编写本机查询,但我不确定它是最佳方式。
不使用本机查询的一种更好的方法是什么?