SSIS与可变的Excel连接pipe理器
我正在尝试在SSIS中使用WMI事件观察程序任务自动执行程序包。 我想要的function是当excel文件被放入某个文件夹时自动执行包。 但是,这些excel文件将成为填充数据库的连接pipe理器。
目前SSIS不会允许我这样做,因为我的excel连接pipe理器在运行程序时没有path,只有在文件被删除后才存在。
有没有办法让variables的Excel连接pipe理器或连接string的值是一个variables?
另外,如何在expression式中实现这个variables的使用?
你可以使用一个variables作为你的excel源码的连接string:
- 点击你的Excel源的连接pipe理器
- 在属性窗口中,添加一个expression式(1)ConnectionString(2)并分配一个variables(3)
你可以用variables做很多不同的事情。 它们与for each loop containers
和file system tasks
结合使用。 你通常做这样的事情
- 在variables窗口中创build一个variables
- 设置一个静态值或一个在包stream程中被更改的值
- 将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