是否有一种将多个数据库合并到一个应用程序中的元sql方法?


Is there a Meta-SQL way to merge multiple databases into one application?

我有两个数据库,一个是MySql,一个是MSSQL,我在两个数据库上都使用php::pdo,除了sql级别的特质,它是可管理的。

我正在从DB1请求所有数据,并从DB2请求所有数据,我正在通过数组循环,将记录扔进,并将它们扔出到更大的数据集,该数据集被馈送到web客户端。

我这样做是为了将多个数据源作为一个界面呈现给最终用户(这不是他们的问题,数据来自n个数据库,他们只是想要一个搜索点)。

现在,我不是很喜欢这样做,感觉很脏,但我希望它能整洁地工作。如果我改变了一个查询,我就必须关注另一个查询。如果我用ajax库设置它,我必须使两个查询匹配。它变得令人讨厌和棘手,我想只写SQL一次为一个数据库,就像我在其他地方做的。

如何才能优雅地将多个数据源作为一个接口呈现?

在MSSQL中,您可以将MySQL添加为链接服务器。这样,您就可以在MSSQL数据库中创建视图或存储过程,从而从两个数据库中获取数据。