1

我想创建一个 SQL Server SSIS 包,我可以在其中查看一个文件夹,一旦我拥有所有(20 个文件)所需的文件,我想执行一个 sql 语句。这些文件可能会在不同的时间出现,有时它们会以 csv 的形式出现,有时它们可​​以以 zip 的形式出现。我知道 ssis 有一个 wmi 事件观察器任务,但我不确定如何指定查找所有 20 个文件。我想我希望 wmi 事件观察器每 30 分钟查看一次该文件夹,一旦它看到所有文件移动到下一步(执行 sql 任务)。有人可以告诉我如何在 wmi 事件观察任务中指定文件名吗?谢谢。

4

1 回答 1

0

这篇文章似乎与您的计划有关。您需要创建正确的 WQL 代码。

http://blogs.technet.com/b/heyscriptingguy/archive/2007/05/22/how-can-i-monitor-the-number-of-files-in-a-folder.aspx

("ASSOCIATORS OF {Win32_Directory.Name='C:\Logs'} Where " _
            & "ResultClass = CIM_DataFile")

我不确定它在 WMI 事件观察器中的表现如何。您是否查看过 SSIS 任务的文档

这是一个更一步一步的方法:

http://microsoft-ssis.blogspot.com/2010/12/continuously-watching-files-with-wmi.html

那里有一些优点,即使它没有解决讨厌的 20 文件要求。

您还可以在服务器上安装一个 powershell 脚本来监视文件,然后当它们都存在时将它们放入子文件夹中,SSIS 将对其进行监视。


这是一个文档页面,展示了如何指定一个文件:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa394594(v=vs.85).aspx

有了这个,我相信你可以在你的 SSIS 包中设置一个 WMI 检查链。

于 2013-06-13T20:42:29.613 回答