admin

在同一服务器上的多个数据库中查询

sql

我正在寻找一种处理以下情况的方法:

  1. 我们有一个数据库服务器,上面有多个数据库(所有数据库都有相同的架构,不同的数据)。

  2. 我们正在寻找一种查询所有数据库的方法(并且它易于配置,因为可以随时添加更多数据库)。此数据访问必须是实时的。

举例来说,假设您有一个插入订单的应用程序-
每个应用程序都有自己的数据库等。我们正在寻找的是一种有效的方式,使单个应用程序可以访问所有其他数据库中的订单信息,以便查询并随后对其进行操作。

到目前为止,我的搜索还没有显示太多,但是我想我可能只是缺少适当的关键字才能找到正确的信息…


阅读 176

收藏
2021-05-10

共1个答案

admin

它永远不会是最干净的解决方案,但是您可以在“主数据库”上定义一个视图(如果您的各个数据库不能保持恒定),其中包括各个数据库中的数据,并允许您对以下数据库执行查询单一来源。

例如…

CREATE VIEW vCombinedRecords AS
SELECT * FROM DB1.dbo.MyTable
UNION ALL
SELECT * FROM DB2.dbo.MyTable

这可以让你做…

SELECT * FROM vCombinedRecords WHERE....

当数据库更改时,您只需更新视图定义以包括新表即可。

2021-05-10