Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 从MS CRM提取行会导致重复_Sql Server_Ssis_Dynamics Crm - Fatal编程技术网

Sql server 从MS CRM提取行会导致重复

Sql server 从MS CRM提取行会导致重复,sql-server,ssis,dynamics-crm,Sql Server,Ssis,Dynamics Crm,从MS CRM提取行时,我遇到了一个奇怪的问题。让我解释一下流程: 我有一个SSIS包,可以从CRM中提取数据并将其加载到另一个数据库。数据从该数据库转换并加载到数据仓库 如果此SSIS包在CRM插入/更新许多行的同时运行,我会得到一个奇怪的结果:在SSIS中提取的数据(使用普通的旧DB源)包含重复的行(尽管修改日期不同) 如果我运行与在SSMS中手动从CRM提取数据完全相同的查询,则不会得到重复的数据 所以。。。。来自SSIS的连接似乎以某种方式对更新的行进行读取——更新之前和之后(某种类型的

从MS CRM提取行时,我遇到了一个奇怪的问题。让我解释一下流程:

我有一个SSIS包,可以从CRM中提取数据并将其加载到另一个数据库。数据从该数据库转换并加载到数据仓库

如果此SSIS包在CRM插入/更新许多行的同时运行,我会得到一个奇怪的结果:在SSIS中提取的数据(使用普通的旧DB源)包含重复的行(尽管修改日期不同)

如果我运行与在SSMS中手动从CRM提取数据完全相同的查询,则不会得到重复的数据

所以。。。。来自SSIS的连接似乎以某种方式对更新的行进行读取——更新之前和之后(某种类型的脏读取)

以前有人经历过吗

Thx很多
/Nicolaj

Nicola,CRM中正在进行的更新->是删除还是插入?后台删除服务可能没有赶上标记为删除的项目,因此您可能有太多/重复项?CRM中的更新是更新和插入的混合。我很确定我知道现在发生了什么,但我不明白为什么:我得到的副本总是在更新的行上。我得到了行的新版本和旧版本(这就是所谓的幻影行吗?)。重复项在CRM中不存在,因为行的id上有唯一的索引,所以CRM的逻辑不是错误的。只有在SSIS中提取数据时才会发生这种情况。如果手动运行查询,则不会得到重复项。SSIS中的隔离级别保留为默认值,因此不应读取未提交的行。