为什么我的 SSIS 文件系统任务无法识别我的目标路径?
Why doesn't my SSIS File System Task recognize my destination path?
我在 SSIS 2012 的 ForEachFile 枚举器中设置了一个文件系统路径。我正在遍历一个目录,加载每个文件,归档该文件,然后处理下一个文件,等等。我已经设置通过使用项目参数值的表达式访问目标文件夹,然后我从 ForEachFile 枚举器中设置的变量中获取源文件。文件系统任务说找不到我的目标文件夹:
这是文件系统任务:
并证明目标文件夹存在:
为什么会出现此错误?我发誓我在 SSIS 2008 和 2005 中使用了完全相同的技术。这是 2012 年,但它应该以相同的方式工作。
DestinationConnection 字段必须包含对平面文件连接的引用。错误是说您没有同名的平面文件连接管理器。
DestinationConnection 不应是自由文本字段。您应该能够在 DestinationConnection 字段中打开下拉列表,然后 select 或创建一个连接管理器。
您需要将输出文件路径配置为 DestinationConnection 字段中引用的文件连接管理器上的 ConnectionString 属性。
使用 UNC 仍然是一种选择。与您对源所做的类似,在您的目标上,设置 IsDestinationPathVariable = True,然后将 \server\path 推入变量 User::ArchivePath
或类似变量。
否则,如user3922917所示:如果IsDestinationPathVariable为false,则需要使用文件连接管理器。
在您的评论中,您指出您正在基于文件系统任务中的表达式构建 UNC 路径。我发现当我在 SSIS 变量中构建我的表达式然后简单地将该变量分配给任务的表达式时,我有更好的体验。虽然此步骤似乎提供了另一层维护,但在任务上放置一个断点并告诉我表达式的计算结果。你不能。它仅供对象使用,您无法检查它,因此如果您的公式关闭,您将处于高处和干燥状态。当您不得不处理转义 UNC 路径时,这永远不会发生
我遇到了同样的问题,为了解决它,我创建了一个变量,并将类似的东西放在 path.Be 中,小心你必须放双“\ \”。
所以路径必须是这样的:"\ \ \ \ad1hfdalhp001\ \d$\ \data\ \Archive\ \"
我在 SSIS 2012 的 ForEachFile 枚举器中设置了一个文件系统路径。我正在遍历一个目录,加载每个文件,归档该文件,然后处理下一个文件,等等。我已经设置通过使用项目参数值的表达式访问目标文件夹,然后我从 ForEachFile 枚举器中设置的变量中获取源文件。文件系统任务说找不到我的目标文件夹:
这是文件系统任务:
并证明目标文件夹存在:
为什么会出现此错误?我发誓我在 SSIS 2008 和 2005 中使用了完全相同的技术。这是 2012 年,但它应该以相同的方式工作。
DestinationConnection 字段必须包含对平面文件连接的引用。错误是说您没有同名的平面文件连接管理器。
DestinationConnection 不应是自由文本字段。您应该能够在 DestinationConnection 字段中打开下拉列表,然后 select 或创建一个连接管理器。
您需要将输出文件路径配置为 DestinationConnection 字段中引用的文件连接管理器上的 ConnectionString 属性。
使用 UNC 仍然是一种选择。与您对源所做的类似,在您的目标上,设置 IsDestinationPathVariable = True,然后将 \server\path 推入变量 User::ArchivePath
或类似变量。
否则,如user3922917所示:如果IsDestinationPathVariable为false,则需要使用文件连接管理器。
在您的评论中,您指出您正在基于文件系统任务中的表达式构建 UNC 路径。我发现当我在 SSIS 变量中构建我的表达式然后简单地将该变量分配给任务的表达式时,我有更好的体验。虽然此步骤似乎提供了另一层维护,但在任务上放置一个断点并告诉我表达式的计算结果。你不能。它仅供对象使用,您无法检查它,因此如果您的公式关闭,您将处于高处和干燥状态。当您不得不处理转义 UNC 路径时,这永远不会发生
我遇到了同样的问题,为了解决它,我创建了一个变量,并将类似的东西放在 path.Be 中,小心你必须放双“\ \”。 所以路径必须是这样的:"\ \ \ \ad1hfdalhp001\ \d$\ \data\ \Archive\ \"