【发布时间】:2014-02-24 15:23:46
【问题描述】:
我正在尝试在 Aginity for Netezza 中运行一些代码,而不将其放入存储过程中,但我无法获得正确的语法。下面是一些示例代码。它给出了诸如“发现“DECLARE”(在字符 1 处)需要关键字之类的错误。如果我将代码放在存储过程中,它将运行良好。
declare
cnt integer;
rVend record;
begin
FOR rVend in select vend_skey, vend_lvl_1_cd from dim_vend loop
select count(*) into cnt
from dim_vend
where vend_lvl_1_cd = rVend.vend_lvl_1_cd and vend_skey < rVend.vend_skey;
if cnt > 0 then
update dim_vend
set to_delete = 1 where vend_skey = rVend.vend_skey;
end if;
end loop;
end;
【问题讨论】:
-
我也面临同样的问题,能否分享一下,请更正代码。
-
@Niks - 你不能运行这样的代码,除非它在一个存储过程中。所以那里的代码是正确的,只需要使用 CREATE PROCEDURE 语法将其放入存储过程中,然后您就可以使用 EXEC 调用该过程。
-
好的...谢谢凯利