DB2 如何创建简单更新并选择存储过程



DB2 存储过程更新记录并选择记录

CREATE PROCEDURE DB2INST1.GETPEOPLE2(IN ids bigint )
    SPECIFIC DB2INST1.GETPEOPLE2
    DYNAMIC RESULT SETS 1
    MODIFIES SQL DATA
    LANGUAGE SQL 

    BEGIN 
        update test2 set a=a+1 where a>ids;
         DECLARE rs1 CURSOR WITH RETURN TO CLIENT FOR  
        select * from db2inst1.test2;
        OPEN rs1;
END  

但它不起作用。错误: DB21034E 该命令已作为 SQL 语句处理,因为它不是有效的命令行处理器命令。在 SQL 处理期间,它返回: SQL0104N 在"ids;声明"。预期的令牌可能包括:"。行号 = 10。SQLSTATE=42601

好的,它有效:

BEGIN 
        DECLARE rs1 CURSOR WITH RETURN TO CLIENT FOR  
            select * from db2inst1.test2;
        update test2 set a=a+1 where a>ids;
        OPEN rs1;
END 

最新更新