我正在尝试创建一个临时表并将数据插入到 foreach 循环容器内的执行 SQL 任务内的临时表中。
这是sql任务
IF OBJECT_ID('TEMPDB.DBO.#TEMP') IS NOT NULL
DROP TABLE #TEMP
GO
CREATE TABLE #TEMP
( ... );
INSERT INTO #TEMP
SELECT (...)
FROM table t1 INNER JOIN table2 t2
ON t1.id = t2.table1_id
WHERE t1.value = ?
我想在 WHERE 子句中添加一个参数,但每当我尝试添加它时,都会收到此错误。
“多步 OLE DB 操作生成错误。检查每个 OLE DB 状态值(如果可用)。未完成任何工作。”。可能的失败原因:查询问题、“ResultSet”属性设置不正确、参数设置不正确或连接未正确建立。
当我对Where子句中的值进行硬编码时,插入工作完美。
我的参数映射做错了什么?
Here are my parameter mapping settings
我也无法使用存储过程。
只要去Expressions
如屏幕截图所示的选项卡你提供了并将以下表达式写入SqlStatmentSource
财产
"IF OBJECT_ID('TEMPDB.DBO.#TEMP') IS NOT NULL
DROP TABLE #TEMP
GO
CREATE TABLE #TEMP
( ... );
INSERT INTO #TEMP
SELECT (...)
FROM table t1 INNER JOIN table2 t2
ON t1.id = t2.table1_id
WHERE t1.value = '" + @[User::Where_Variable] + "'"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)