BIDS从更改文件名导入[通配符?]

时间:2014-04-16 19:20:28

标签: variables bids

我正在尝试创建导入数据的流程。我创建了整个过程并且它可以工作,但是我在创建变量时遇到了问题,无法找到我想要自动导入的csv的文件名。每次向我上传新的csv时都会有一个时间戳。无论名称是什么,我希望能够获取该文件并对其起作用。

因此,例如本周文件名为

filename_4-14-2014.csv

下周

filename_4_21_2014.csv

等到永恒。 。 。

有没有办法创建一个变量来获取完整的文件名,即使它正在改变?

2 个答案:

答案 0 :(得分:1)

在做了一些探讨之后,我发现了以下内容......

您可以使用文件系统任务来执行我所指的复制操作。您可以将输入文件和输出文件设置为变量。这样,您始终可以知道用于导入的文件总是名称相同,并且具有正确的数据。

您只需要将变量和文件系统任务添加到您的包中。

答案 1 :(得分:0)

好的,为了实现我想要的,我创建了一个Foreach循环容器。使用foreach循环容器,我通过使用通配符[由asterisk:* .csv表示]查找在我指定文件夹中以.csv结尾的任何文件。

在Foreach循环容器中如下。

Step 1: File System Task - rename file. 
Step 2: Data Flow Task - Import data to sql
Step 3: File System Task - Copy the file to another folder, append datetime to filename
Step 4: File System Task - Delete source file. 

我使用变量来获取所有文件和文件夹名称以及日期时间。