我是 SSIS 的新手。我有来自单一来源的数据。我需要将该数据输入到几个表中(这些表通过外键关系相关联)。我正在使用多播将数据输入到多个目的地。
我的问题是...
如何获取进入一个目的地的条目的身份并将该身份用于第二个目的地的外键列?
这是我正在寻找的一个例子。 Employee 表有一个指向 Address 表的外键。但来源包括所有这些信息。将数据输入到 2 个不同的位置很容易。但是当我将信息输入到员工表中时,我需要地址表中的身份。我如何获得那个ID?
源(Excel 文件)
Name Street State etc...
---- ------ -----
Jim 12345 Plain St. CA
Bob 54321 Main St. CA
etc.
目的地
Address Employee
------- -------
PK AddressId PK EmployeeId
Street FK AddressId
State Name
etc... etc...
最佳答案
我会尝试像您这样的任务的另一种方法是人为地为父表生成 ID 字段。这里的想法是提前知道 ID,以便您可以分配外键值。
然后不是使用多播,而是按顺序加载数据:父级,然后是子级。对于父表,勾选保留标识属性(OLEDB 目标)。
关于sql - SSIS : Using multicast to enter data into 2 RELATED destinations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17531490/