0

我有一个包,我将 csv 源文件加载到表中。我有两种类型的源文件,员工和员工详细信息。

  1. 例如员工 csv 文件有 4 列 eid、ename、designation、age。

  2. Employeedetails csv 文件有 6 列 eid、ename、designation、age、depatname、deptid

  3. 我的目标表有 eid、ename、designation、age、depatname、deptid。

现在,我想根据我的变量集合中的文件类型变量加载这 2 个文件。我也完成了那部分。

因此,我只使用了一个,而不是使用 2 个 Dataflow 任务。我的 DFT 内部有以下转换。

原始文件源
|
派生列变换
|
Oledb 目标表

在控制流中,我使用了执行包任务,当我将文件类型指定为员工时调用子包,它运行员工包,它将员工 CSV 文件加载到原始文件目标中。

如果我选择文件类型作为 Employeedetails,它会运行 EmployeeDetails 包,它会在其中获取employeeDetails CSV 文件并将其加载到 rawfile 目标中。

现在我把这个原始文件加载到目标表中。一个文件能够加载,当我加载第二个文件时,无论是 Employee 文件还是 EmployeeDetails 文件,都会出现元数据问题。

因此,我需要去打包并更改每一个转换。

我尝试将所有转换和包级别的 validate External Meta data value 保持为 false。

如何解决这个问题并加载我的两个文件。

4

1 回答 1

0

由于这两个文件具有不同的列,因此您需要两个数据流。您可以在控制流中有一个步骤,根据您作为变量发送的文件名选择正确的一个。

但是由于详细信息文件包含员工文件的所有列,为什么不只处理其中一个而忽略另一个呢?

于 2012-06-04T14:02:48.140 回答