我有4个不同的文本文件,每个文件都有不同的名称和不同的列,放在一个文件夹中。我希望这4四个文件被插入或更新到4个不同的现有表格。那么如何在SSIS中动态读取这4个文件,并将它们动态地插入到各自的表中。
发布于 2017-01-28 00:24:26
那么,您需要使用数据流任务将数据从平面文件源移动到表目标(也许是OLEDB目标)。文件中的列是否以任何方式分隔?例如,使用以下任何一种:(;)、(|)或类似的东西?如果是,您可以创建一个FlatFileConnectionManager并将其设置为拆分列。如果没有,您可能需要使用FixedWidth选项来分隔您的列。要使用OLEDB目标,您需要创建一个OLEDB connectionManager以指向数据库中的表。如果我有关于您要从中读取数据的文件的更多信息,我可以为您提供更多帮助。
编辑
好吧,你在开始的时候说你正在处理4个文件和4个表,所以你也可以创建4个平面目标源和4个OLEDB目标(每个平面文件1个)。如果我没理解错的话,这4个文件可能存在,也可能不存在。因此,如果您知道文件将获得的名称,请将包属性DelayValidation更改为true,然后使用示例文本文件创建连接。这样做是为了保存文件路径。在我看来,这些表确实需要存在。现在,当你说:
每当文件夹中有文件时,我希望将所有文本文件加载到每个不同的现有表中。
我知道您可以执行类似操作的唯一方法是,使用SQL Server代理作业在特定时间安排包的执行。如果这是你要找的东西,请告诉我。
https://stackoverflow.com/questions/41898165
复制相似问题