Can Doctrine可以对来自多个数据库的表执行SELECT操作吗?
问题描述:
我试图摆脱现有的SQL教义Can Doctrine可以对来自多个数据库的表执行SELECT操作吗?
举例来说,如果我有像这样的查询:
SELECT column_list
FROM db1
INNER JOIN db2 ON db1.col=db2.col
INNER JOIN db3 ON db2.col=db3.col
WHERE where_conditions;
能学说可以用来匹配上面的SQL?
目前看来,我认为原则可以与多个实体分别工作,但我还没有发现的文件上学说是否能结合的实体整合到一个SELECT命令。
我认为有一个解决方法是分别使用多个实体,即将上面的查询拆分成只有一个数据库涉及任何一个查询的地方,但是如果有的话,我会犹豫如何是一个更好的方法。
答
从techpunch article在我看来,你可以简单地在你的实体名称选项中使用“点”分隔符,其他所有内容都保持不变。因此,您可以按原样使用实体,并为您选择适当的数据库。
/**
* @Entity
* @Table(name="database_name.table_name")
*/
class YourEntity
发现这篇文章,如果这两个数据库在同一台服务器上,可能会有帮助https://techpunch.co.uk/development/using-multiple-databases-with-symfony2-and-doctrine2 – Dennis