Sql server 如果服务器文件夹中存在文件,如何处理SQL Server代理作业?

Sql server 如果服务器文件夹中存在文件,如何处理SQL Server代理作业?,sql-server,ssis,agent,Sql Server,Ssis,Agent,我需要每天导入一个平面文件。该文件每天都更改其名称。处理完文件后,需要将其移动到另一个文件夹 我注意到我可以在SQLServer代理中安排作业,我可以告诉它每小时左右运行一次,并且我可以向它添加CMD命令 我找到的解决方案是运行一个脚本来检查文件是否存在,因为文件夹应该是空的或者至少有一个文件 如果文件存在,脚本将该文件重命名为SSIS包中使用的文件,然后运行SSIS包 完成整个过程后,它应该根据今天的日期再次重命名该文件,并将其移动到另一个文件夹中 如果文件不存在,那么它应该什么也不做,再等一

我需要每天导入一个平面文件。该文件每天都更改其名称。处理完文件后,需要将其移动到另一个文件夹

我注意到我可以在SQLServer代理中安排作业,我可以告诉它每小时左右运行一次,并且我可以向它添加CMD命令

我找到的解决方案是运行一个脚本来检查文件是否存在,因为文件夹应该是空的或者至少有一个文件

如果文件存在,脚本将该文件重命名为SSIS包中使用的文件,然后运行SSIS包

完成整个过程后,它应该根据今天的日期再次重命名该文件,并将其移动到另一个文件夹中

如果文件不存在,那么它应该什么也不做,再等一个小时左右再运行

这种情况的最佳解决方案是什么?剧本是个好主意吗?是否可以将文件存在时的if/else添加到SSIS包中?或者甚至让脚本从SSIS包本身运行,而不是将其添加到服务器代理

编辑:


看起来我有点天真,可以从服务器上运行VB脚本。这是推荐的解决方案吗?这确实解决了我的问题,但我只是想知道这是否是个好主意

这解决了我所有的问题:


您看过SSIS文件监视程序场景吗?有些实现使用WMI事件监视程序,当您收到一个带有变量名的文件时(假定其中包含日期或其他内容)。您可以将其重命名为标准名称。处理它。移动它并将处理日期添加到文件名中。那是对形势的总结吗?是的。我在WMI事件观察程序下找到了一些指南。但是现在我在WQL查询方面遇到了问题。这也在其他地方被遮住了:这里更详细