您好我有一个SSIS包,可以执行以下任务:a)从表中截断最近7天的数据(如果有的话),然后重新加载它,所有这些都被放在一个序列容器中并且运行了#s; s好的。现在我打算删除7的硬编码值并引入一个我可以在运行时提供的变量NoOfDays。这可以实现吗?
我添加了一个变量并尝试将其映射到ExecuteSQL Task的参数...它给出了以下错误:
我甚至希望该值可用于下一步数据流任务
[Execute SQL Task] Error: Executing the query "delete from USER_CONTENT where CONVERT..." failed with the following error: "The variable name '@NoOfDays' has already been declared. Variable names must be unique within a query batch or stored procedure.
Statement(s) could not be prepared.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
我使用的查询是
delete from USER_CONTENT
where CONVERT(date,ISSUE_DATE)>=CONVERT(DATE,GETDATE()-7)
并且它违反了OLE-DB连接。
答案 0 :(得分:0)
我没有足够的积分来发表评论所以我将不得不这样问你:你是否使用查询参数和#34;?"如果没有,那么为了使用包使用存储过程的变量,您需要编写语句以使用它们,也不要为参数命名,使用包指定的默认值0,1,2等。