ssis - 在连接表达式中插入用户变量时出现问题

标签 ssis scope foreach-loop-container

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

我正处于拖入 foreach 循环容器并指向正确文件夹的位置。我制作了一个字符串变量(具有 foreach 循环范围)并将默认值设置为 excel 文件源文件夹中的一个文件。

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

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

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

谢谢。

最佳答案

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

如果您真的想找到创建这些变量的位置,请查看未使用的选项卡“Package Explorer”。继续展开可执行文件并查看变量项,直到找到丢失的变量。

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

关于ssis - 在连接表达式中插入用户变量时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5604722/

相关文章:

c# - 将用户参数传递给 SSIS 包

dll - SQL Server 2012 的 VSTAScriptingLib

foreach - 每个循环的 "rows in all the tables"是什么?

error-handling - SSIS foreach循环,根据处理期间的任何错误将每个文件移动到“完成”或“错误”文件夹

java - 相同的值多次保存到数据库中,即使 hibernate 中存在另一个列表

sql-server - 如何创建 SQL 表并用 Excel 电子表格数据填充它?

sql - 统计每分钟插入的记录数

python - 在 python 的两层循环中使用相同的变量时发生了什么?

Java初学者求助,无法解析变量

javascript - 访问对象字面量函数内的Jquery对象变量