【发布时间】:2012-03-12 18:39:01
【问题描述】:
抱歉,我是 SSIS 菜鸟,我正在努力尝试导入平面文件并执行 OLE DB 命令,同时在 SqlCommand 中包含一个变量。
您可以看到我的查询以及包含已定义变量的尝试。错误显示如下:
必须声明标量变量“@”我明白错误在说什么,但经过数小时的搜索,我无法弄清楚如何在 OLE DB 命令中使用变量。
提前感谢您的帮助。
【问题讨论】:
-
有些命令需要你使用“?”代替变量(调用您的参数“0”、“1”、“2”等),以及其他
@variable语法。确保您也将变量映射到您的参数。 -
绝对尝试过(使用 ? 代替变量名)。问题是我必须映射那个?到输入列,并且从输入列下拉列表中看不到我的任何变量。只是来自平面文件源的列...
-
看起来派生列转换可能是我正在寻找的。span>
-
您在正确的轨道上,使用派生列将变量注入数据流。此外,如果您在意,使用 OLE DB 命令不会获得很好的性能 - 它会导致它处理的所有行的单例更新。
-
您可以在数据流之后对控制流使用“执行 SQL 命令”,并对整个数据集进行更新
标签: sql-server-2008 ssis oledb