Visual studio 从Visual Studio 2008的“执行SQL任务”调用netezza查询
我将一个参数传递到Visual Studio 2008中的执行SQL任务工具中,需要执行以下操作:Visual studio 从Visual Studio 2008的“执行SQL任务”调用netezza查询,visual-studio,visual-studio-2008,ssis,netezza,Visual Studio,Visual Studio 2008,Ssis,Netezza,我将一个参数传递到Visual Studio 2008中的执行SQL任务工具中,需要执行以下操作: DECLARE CurrentFileName VARCHAR(200) := (?); DECLARE TableToTruncate VARCHAR(200); TableToTruncate := CurrentFileName+'_TABLE_VAR'; BEGIN TRUNCATE TABLE TableToTruncate; END; 有人知道我为什么一直在
DECLARE CurrentFileName VARCHAR(200) := (?);
DECLARE TableToTruncate VARCHAR(200);
TableToTruncate := CurrentFileName+'_TABLE_VAR';
BEGIN
TRUNCATE TABLE TableToTruncate;
END;
有人知道我为什么一直在
error ^ found "DECLARE" (at char 1) expecting a keyword".
这里最好的建议是创建一个存储过程,并在SQL任务中调用它,如下所示
CREATE PROCEDURE sp_truncate_table(@filename VARCHAR(200))
AS
BEGIN
DECLARE TableToTruncate VARCHAR(200);
TableToTruncate := @filename+'_TABLE_VAR';
TRUNCATE TABLE TableToTruncate;
END;
然后在执行SQL任务配置编辑器中,在SQLStatement属性中说exec sp_truncate_table
请参阅此页以了解更多相关信息。谢谢Rahul,但是我仍然收到错误^found DECLARE at char 7,它需要一个关键字,这不是SSIS sql任务中管道查询的正确方式。见编辑后的答案。