其他分享
首页 > 其他分享> > CodeGo.net>如何在SSIS中基于创建日期读取文件夹的所有文件?

CodeGo.net>如何在SSIS中基于创建日期读取文件夹的所有文件?

作者:互联网

我有一个文件夹,每天都有一些平面文件被复制到其中.这些文件具有相同的格式和相同的结构.但是,我想根据它们的创建顺序将它们读入数据库.

示例:必须在下午2点创建的文件之前先处理在下午2点创建的文件.我想知道这样做是否有任何简单的技巧?奇怪的是,我必须使用SSIS 2008!谢谢!

解决方法:

好消息是您正在使用SSIS 2008,因为它允许Linq

我的插图适用于SSIS 2015,但适用于2008

>添加类型为Object User :: dtFiles的变量
>将脚本任务添加到项目中,并将创建的变量添加为ReadWriteVariable

enter image description here

>在您的脚本任务中,编写以下代码:

您必须导入System.Linq库

    Public Sub Main()
    '
    ' Add your code here
    '


    Dim strDirectory As String = "C:\New Folder"
    Dim dtFiles As New List(Of String)

    dtFiles.AddRange(IO.Directory.GetFiles(strDirectory, "*.*", IO.SearchOption.TopDirectoryOnly
                                           ).OrderBy(Function(x) IO.File.GetCreationTime(x)).ToList)


    Dts.Variables.Item("dtFiles").Value = dtFiles

    Dts.TaskResult = ScriptResults.Success
End Sub

>为每个循环容器添加一个

enter image description here

>将for循环的每个更改为ado枚举器,并将数据源设置为User :: dtFiles

enter image description here

标签:ssis,ssis-2012,ssis-2008,c,sql-server
来源: https://codeday.me/bug/20191111/2022726.html