SSIS与可变的Excel连接pipe理器

我正在尝试在SSIS中使用WMI事件观察程序任务自动执行程序包。 我想要的function是当excel文件被放入某个文件夹时自动执行包。 但是,这些excel文件将成为填充数据库的连接pipe理器。

目前SSIS不会允许我这样做,因为我的excel连接pipe理器在运行程序时没有path,只有在文件被删除后才存在。

有没有办法让variables的Excel连接pipe理器或连接string的值是一个variables?

另外,如何在expression式中实现这个variables的使用?

你可以使用一个variables作为你的excel源码的连接string:

  1. 点击你的Excel源的连接pipe理器
  2. 在属性窗口中,添加一个expression式(1)ConnectionString(2)并分配一个variables(3)

在这里输入图像说明

你可以用variables做很多不同的事情。 它们与for each loop containersfile system tasks结合使用。 你通常做这样的事情

  1. 在variables窗口中创build一个variables
  2. 设置一个静态值或一个在包stream程中被更改的值
  3. 将variables映射到expression式

在网上有很多的howtos,也许有一个看这个得到它的温暖:

http://www.simple-talk.com/sql/ssis/working-with-variables-in-sql-server-integration-services/

http://www.rafael-salas.com/2007/03/ssis-file-system-task-move-and-rename.html

我知道实现这个最快的方法是创build一个excel连接pipe理器并通过一个variables设置连接string。 为了做到这一点,您需要先将连接器指向一个excel文件。 因为您将在运行时dynamic设置新文件,所以不要紧。 然后,select你的Excel连接pipe理器,并检查其属性。 你有一个ConnectionString属性,你可以通过expression式来设置。

在这里输入图像描述

但是,您必须确保您的软件包在填充了正确的连接string才能使用Excel连接器! 有关SSISvariables的更多信息,请查看以下链接:SSIS中的variables