我目前正致力于通过VBA(Access)通过CMD触发的SSIS包。该软件包所做的就是从文件夹中读取一堆文件并将它们上传到SQL Server中的表中。棘手的部分是这个包来读取文件的文件夹位置是动态的。对STACKOVERFLOW有所了解,我找到了一种让它变得动态的方法,并且从MS VS2008执行时该软件包运行良好。
FUN PART:作为完成链条的最后一个链接,我在cmd中使用了以下内容
dtexec \f "C:\Desktop\SSISAppend.dtsx" /Set "\Package.Variables[User::Directory].Property[Value];C:\Desktop\AppendFiles"
抛出错误: 代码:0x8001C004 描述:For Each File Enumerator为空。 For Each File枚举器未找到任何文件模式的文件,或指定的目录为空。
我使用了以下变量: ForEachfile枚举器中COLLECTION>> EXPRESSIONS中针对DIRECTORY的“目录”, 变量映射中的“FilePath”(带索引0)
当通过MS VS2008执行时,程序包运行良好,并且在变量DIRECTORY中提到了watever位置。
感谢所有帮助,如果您需要更多信息,请告诉我。
答案 0 :(得分:-1)
与@Joost关于通过Access / CMD的权限的评论一样思考。
也许你可以在启动CMD时尝试使用RUNAS。
使用RUNAS命令 http://technet.microsoft.com/en-us/library/cc771525.aspx :