是否可以插入初始表,然后使用插入的 ID 插入到在一个数据流中的列之间具有外键约束的主表?
我是集成服务的新手,不了解这些功能
设想:
表 A - ID - DESC
表 B - ID - A_ID - DESC
这是 A_ID 是外键的地方(如果它不明显)
我可以使用这种顺序事件流创建单个数据流,还是在插入表 A 后需要创建另一个数据流以插入表 B。
谢谢
数据流中没有优先约束或容器,因此如果您将两个操作放在一个流中,它们会并行执行,这意味着您无法确保它们会按必要的顺序完成。所以只需使用两个数据流,然后您就可以控制控制流中的顺序。
在一个数据流任务中,您可以有不同的“通道”和不同的导入。这些可以通过使用合并任务进行合并,您可以使用您的 ID 加入。通常,每个“通道”包含一个数据流,代表一个表。
图片来源:http ://sqlserverpedia.com/w/images/5/56/CWebb-Dataflow.png
如果您看一下图像,“连接”、“命令”和“会话”任务将各有一个数据流。如您所见,合并任务将处理两个流,因此您可以通过这种方式预处理数据。(就像你想要一个初始表一样。但这将是并行的!)
如果我说对了,您只是想查找一下。看看这里。
如果我很好理解你:
TABLE A
TABLE B
使用LOOKUP元素中插入数据以从中获取密钥时TABLE A
。