Как написать хранимую процедуру в DB2 - PullRequest
0 голосов
/ 28 мая 2019

Пожалуйста, помогите мне написать хранимую процедуру в Db2.

CREATE PROCEDURE assedt
BEGIN 

 SELECT ASSETNUM FROM ASSET
END 

Я пробовал приведенный выше код, он выдает ошибку, как показано ниже:

Отчет об ошибке - DB2Ошибка SQL: SQLCODE = -104, SQLSTATE = 42601, SQLERRMC = SELECT ASSETNUM; ROCEDURE p1 BEGIN

;, DRIVER = 4.12.55

Ответы [ 3 ]

0 голосов
/ 28 мая 2019

Следующее руководство: http://www.redbooks.ibm.com/abstracts/sg248326.html?Open, написано для Db2 для IBM i (не zOS, не LUW), но глава 2 является отличным введением в процедурный SQL-запрос DB2 и применима к другим DB2.Надеюсь, это поможет.

0 голосов
/ 31 мая 2019

Пример:

create table test_table (numcol integer);

insert into test_table values (1);

CREATE OR REPLACE procedure assedt (out out_var integer)
language sql
p1: begin
declare l_var integer;
   select numcol into l_var from test_table;
   set out_var = l_var + 1;
end p1;

begin
declare g_var integer;
call assedt( g_var );
insert into test_table values (g_var);
end;

select * from test_table;
0 голосов
/ 28 мая 2019

Кажется, вы пропустили двоеточие после "P1".Это должно быть "P1:" Оформить заказ site для примера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...