最有效的方法在一个数据库基础上的结果,从完全不同的数据库中设置选择记录(Most efficient

2019-10-29 17:06发布

我有2级完全独立的数据库 - 一个MSSQL和一个普遍的。 由于我们的产品的数据存储在数据库中普及的方式,你不能轻易运行查询来获取产品信息和功能显示在我们的网站。

因此,使用DTS包我从普适产品数据并处理它,以便它是与产品项目#(对于两个数据库主键)和所有的产品特征的一个MSSQL表。 非常容易和快速查询我们的网站。

无处不在的数据库是ERP系统中使用的,所以它总是有每个产品的最先进的最新库存总计。 现在,我需要找到最有效地拉动从普适数据库基于从MSSQL数据库实时基础上检索到的记录的库存信息的最佳方式。

刚刚获得某项产品的库存信息也没什么大不了的。 我主要关心的是如何把库存数据项的列表,从上MSSQL产品表的查询返回,并有库存数据匹配了正确的项目。

所有缓存从普适分贝的库存数据将无法正常工作,因为我需要它是实时的。

什么是最有效的选择对我来说,这个拉的数据,除了产生SELECT语句列表中的每个项目? 我想它只有可能是一个数据库调用。

谢谢。

Answer 1:

为了访问数据从SQL Server不同的数据库,你必须首先创建一个链接的服务器实例 SQL服务器指向其他数据库(普适在这个例子中)与相应的凭据/权限上。 这篇文章是连接的MySQL到SQL Server 2008 ,但步骤是一样的。

一旦这项工作到位,你可以在SQL Server编写查询,就好像你在处理一个单一的数据库。



Answer 2:

你可以保持一个高速缓存在MSSQL和具有普适更新它使用触发器库存水平的变化是什么时候?



Answer 3:

我不太清楚,如果这是适用的,但在MySQL中,我使用IN操作符可以一次拉显著的数据集(多达数千个)。

SELECT a,b,c FROM table WHERE id IN (123,234,345,456,...)

它有时可以真正减少需要发送的查询数。



文章来源: Most efficient way to select records in one database based on result set from totally different database