SSIS查找相关数据并添加(如果缺少)
假设我有如下输入数据: firstName | lastName | CountrySSIS查找相关数据并添加(如果缺少),ssis,Ssis,假设我有如下输入数据: firstName | lastName | Country 英国鲍勃·史密斯 简·多伊·法国 汉克天蝎座英国 目标表格包括: 人们 ID |名|姓|国ID 国家 ID| CountryName 0 |法国 现在,在SSIS数据流任务中,我读取输入,使用查找来搜索国家表中匹配的国家名称,如果没有问题,则返回ID并继续,但如果不存在,我希望使用OLEDBCommand在国家表中创建记录,获取ID并继续 然而,正在发生的是,英国两次通过OLEDB委员会 我应该如何处理这种情况
英国鲍勃·史密斯
简·多伊·法国
汉克天蝎座英国 目标表格包括: 人们
ID |名|姓|国ID 国家
ID| CountryName
0 |法国 现在,在SSIS数据流任务中,我读取输入,使用查找来搜索国家表中匹配的国家名称,如果没有问题,则返回ID并继续,但如果不存在,我希望使用OLEDBCommand在国家表中创建记录,获取ID并继续 然而,正在发生的是,英国两次通过OLEDB委员会
我应该如何处理这种情况?是否有某种方法可以强制查找一次检查一条记录,因为它似乎是在添加丢失的记录之前检查一批记录。我已尝试将缓存选项更改为“完全”和“无”,以不产生任何影响。您可以将缓冲区大小设置为1(每个缓冲区一行),并且在查找时不缓存,但即使如此,您仍有风险(因为SSI的并行化)让两行“同时”运行 然而,你能做的是以不同的方式来看待它。也许你不需要一步到位 首先,加载所有用户并对照国家/地区进行检查。对于那些没有的,汇总(基于国家),并将其插入到您的国家表中
然后,您可以使用普通查找加载所有用户,因为国家/地区表已预先填充。谢谢,这非常有效。仍然留下了一个问题,“为什么我没有想到这一点”。