我在SSIS中有场景.我有一个包,它是从flatfile到数据库的简单数据移动.我有一个特定的位置,我想在文件夹上的文件时执行该包.
WQL类似SQL,但有点偏,这是我用来观看文件夹的例子:
SELECT * FROM __InstanceCreationEvent WITHIN 10
WHERE TargetInstance ISA "CIM_DirectoryContainsFile"
and TargetInstance.GroupComponent= "Win32_Directory.Name=\"c:\\\\WMIFileWatcher\""
Run Code Online (Sandbox Code Playgroud)
分解此查询超出了范围,但请注意过滤器中的目录名称以及使其工作所需的字符串转义.



在下图中,此包将一直运行,直到添加文件,处理它,然后完成.

要使程序包永久运行,请将这两个任务包装在For循环中,并将EvalExpression设置为true == true.

您还可以考虑使用PowerShell注册对象事件,并在触发这些事件时启动SSIS包.这需要使您的程序包持续运行的连续开销少一点,但它增加了额外的依赖性.
| 归档时间: |
|
| 查看次数: |
5305 次 |
| 最近记录: |