如何从ssis中的多个文件夹中删除旧的csv文件

时间:2017-12-20 14:53:52

标签: sql-server ssis etl

我正在开发一个项目,我需要在ssis中使用for-each循环容器从多个分支文件夹中删除旧的.csv文件?任何人都可以指导我。顺便提一下,我是ssis世界的新手,所以一个例子和截图确实对我很有帮助。

亲切的问候, 双

2 个答案:

答案 0 :(得分:1)

使用脚本任务并按如下方式编写:

这将删除文件夹和子文件夹中的所有文件

C#代码

this.subject = {
    nombre: '',
    estudios: '',
    ...
}

使用脚本任务制作SSIS包 enter image description here

输入显示的代码

  

请记住更改指定文件夹的路径

enter image description here

答案 1 :(得分:0)

实现这一目标有两种方法:

使用文件系统任务

只需添加一个Foreach循环,然后选择包含csv的目录,在foreach循环容器中添加一个删除这些文件的File System Task。您可以阅读这些详细的文章以获取更多信息:Delete files from specified folder using File System Task in SQL Server - SSIS

使用脚本任务

只需添加一个脚本任务,然后选择脚本语言作为Visual Basic,并编写以下代码:

Public Sub Main()

    Dim strFiles as String() = Io.Directory.GetFiles("C:\MyDirectory\","*.csv",IO.SearchOption.AllDirectories)

    For each strFile as String in strFiles
        IO.File.Delete(strFile)
    Next

    Dts.TaskResult = ScriptResults.Success

End Sub