我需要对两台服务器上的数据库发出查询:
[CRM].[CRM].[dbo].[BasicInfo] (NationalID PK, CustomerCardNo)
[ERP].[ERP].[dbo].[Order] (OrderID PK, CustomerCardNo)
我想做的是这样的:
select *
from [ERP].[ERP].[dbo].[Order] as O
where O.CustomerCardNo in (select CustomerCardNo
from [CRM].[CRM].[dbo].[BasicInfo]);
我认为有三种方法可以实现这一目标:
- 链接服务器:我的经理可能不会授权,因为他们不熟悉链接服务器;
- 开放数据源:公司政策不允许开发者访问数据库密码;
- SSIS:似乎是唯一的选择,我公司广泛采用SSIS。
当我在谷歌上搜索时,我没有找到有关如何使用 SSIS 执行此操作的教程。最接近的问题是这个。请给我一些指导。
由于您所做的相当于内部联接,请尝试一下: SSIS Merge Join
使用 SSIS 可以通过多种方式实现此目的:
您也可以找到其他方法...
我对stackoverflow上的一个类似问题有详细的回答: