3

我正在尝试将 110 个 excel 文件导入 SSIS2008 中的 sql server 数据库。

我正在拖入我的 foreach 循环容器,指向正确的文件夹。我已经创建了一个字符串变量(具有 foreach 循环范围)并将默认值设置为 excel 文件的源文件夹中的一个文件。

当我尝试构建连接字符串表达式并尝试查找用户变量时,它不在列表中。列表中唯一的变量是系统变量。

有谁知道我可能会出错的地方。我觉得我已经通过定义 foreach 循环中的字符串变量来设置正确的范围。

(我创建的 User::FilePath 变量在包资源管理器中也不可见。)

谢谢。

4

1 回答 1

3

我发现当我将变量保持在包级别时,我通常会获得更好的 SSIS 体验。我怀疑连接管理器不喜欢仅在循环中可见的连接字符串变量,这可能会导致设计时验证有些心痛。您创建的用户变量是可见的,只是在您正在查看的范围内不可见。如果您单击了 SSIS 的画布/背景,您将只能看到包级别的变量。我的怀疑是变量在 foreach 循环中,甚至可能在 foreach 容器内的数据流或其他任务中。

如果您真的想找到创建这些变量的位置,请查看未使用的选项卡“包资源管理器”。继续展开 Executables 并查看 Variables 项,直到找到丢失的变量。

最后,如果您有“错误”级别的变量,请使用BIDS Helper用户。即使您有正确级别的变量,也请使用 BIDS Helper。它是免费的,它确实改善了包开发体验。

于 2011-05-11T02:39:32.670 回答