在DB2中创建存储过程

时间:2015-06-19 05:51:13

标签: stored-procedures db2

我正在尝试在db2中创建一个存储过程,如下所示:

$sql

但它会抛出错误,如下所示,

CREATE PROCEDURE MIS.TEST_PROC1 (IN ID INT) 
DYNAMIC RESULT SETS 1
P1: BEGIN
-- Declare cursor
DECLARE cursor1 CURSOR WITH RETURN FOR
    SELECT REM
    FROM MIS.BOOKING;
     -- Cursor left open for client application
    OPEN cursor1;
    END P1;

在Data Studio中,它开始显示“P1:BEGIN”行本身的错误。 必须在IBM Data Studio 4.1中创建此过程 任何人都可以检查我是否遗漏了这个

1 个答案:

答案 0 :(得分:0)

您在data studio中遇到错误的原因 P1:BEGIN是您可能尝试从SQL编辑器创建SP 而不是从常规编辑器创建它。

这是你应该做的: - 1.从Data Source Explorer,连接到您的数据库。 2.从Data Project Explorer中,使用从DSE连接的连接创建一个新的数据开发项目。 3.现在在您的项目下,右键单击存储过程,然后单击“新建” 使用任何模板或只是默认,然后你会看到一个新的Routine编辑器打开。 我测试了这个简单的代码: - CREATE PROCEDURE db2inst1.TEST_PROC1(IN ID INT) 动态结果集1 P1:开始 - 声明光标 DECLARE cursor1 CURSOR WITH RETURN FOR     选择名称     来自SYSIBM.SYSTABLES;       - 光标保持打开状态以供客户端应用     OPEN cursor1; 结束P1

注意: - 你不需要;在P1结束时。

现在,通过单击常规编辑器右上角的“保存”按钮旁边的“部署”图标,将其部署到SP到db2。

我希望这会有所帮助。

谢谢, Chuckz。