2016-09-27 35 views
0

我可以在SSIS OLEDB命令组件中的查询下面运行吗? {如何在OLE DB命令SSIS中运行多个“更新”语句?

DECLARE @ORDERID BIGINT = ? 
DECLARE @UPDATEDSKU VARCHAR(50) = ? 

UPDATE  DeviceHistory 
SET   SKUReplacement = @UPDATEDSKU 
WHERE  (OrderID = @ORDERID) 

DECLARE @ProductID as INT 

Select @ProductID = ProductID from Products where ProductSKU= @UPDATEDSKU AND IsActive=1 AND ProgramID=2 

}

+0

您是否收到错误?那是什么实际问题。你如何设置命令任务? –

回答

0

声明两个可变,@OrderID和@UpdatedSKU置于不正确。 由于它是一个OLEDB命令对象,因此应首先声明@UPdatedSKU,以便将第一个参数分配给它。

DECLARE @UPDATEDSKU VARCHAR(50) = ? 
DECLARE @ORDERID BIGINT = ? 


UPDATE  DeviceHistory 
SET   SKUReplacement = @UPDATEDSKU 
WHERE  (OrderID = @ORDERID) 

DECLARE @ProductID as INT 

Select @ProductID = ProductID from Products where ProductSKU= @UPDATEDSKU AND IsActive=1 AND ProgramID=2 

}

在OLEDB命令传递参数时,我们必须遵循参数序列。