【问题标题】:Problem inserting a user variable in connection expression在连接表达式中插入用户变量时出现问题
【发布时间】:2011-04-09 11:26:02
【问题描述】:

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

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

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

有谁知道我哪里可能出错了。我觉得我通过定义foreach循环中的字符串变量设置了正确的范围。

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

谢谢。

【问题讨论】:

    标签: ssis scope foreach-loop-container


    【解决方案1】:

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

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

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

    【讨论】:

    • 感谢您的有用建议。
    猜你喜欢
    • 1970-01-01
    • 2020-04-17
    • 2015-06-11
    • 2019-06-08
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多