根据SSIS中的数据内容识别重复文件

Identifying duplicate files based on data content in SSIS

我将文件保存到共享位置。每个文件都有不同的元即。文件名,创建日期。

当且仅当文件内容与之前处理的文件不同时,我才必须使用 SSIS 提取数据。

这应该相当简单 -

  1. 使用配置为 For Each File 设置的 ForEach 容器。 Folder name 将是共享位置。 File Name 应该是通配符(例如,*.csv)
  2. 在 SQL 中创建一个名为 LoadedFiles 的 table,它将保存加载文件的名称。请注意,当您创建 ForEach 容器时,您还会创建一个保存文件名的变量。现在在 ForEach 容器中,检查此变量中的值是否已存在于 LoadedFiles table 中。如果没有,只有加载。

我假设所有文件都具有相同的元数据(列名和数据类型)。即使他们不这样做,您也可以采用相同的逻辑。

此外,如果不是很明显,为了使它起作用,您需要在每次决定加载文件时在 LoadedFiles table 中插入一个新行。

编辑:似乎相同的文件名并不等同于 OP 的相同内容。在那种情况下,他应该在 SQL table 上做一个 MERGE 而不是盲插入。

MERGE 在主键上 IF MATCHED 什么都不做 INSERT

我有解决办法

SSIS 执行进程任务,我调用了 FC.exe

http://www.howtogeek.com/206123/how-to-use-fc-file-compare-from-the-windows-command-prompt/