Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Вызов хранимой процедуры DB2 из другой ХП / 15 сообщений из 15, страница 1 из 1
31.10.2006, 10:19
    #34093116
power-baa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Как из хранимой процедуры вызвать другую хранимую процедуру ?
...
Рейтинг: 0 / 0
31.10.2006, 10:56
    #34093306
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Из хранимой процедуры какой?
С, java, sql?
...
Рейтинг: 0 / 0
31.10.2006, 12:27
    #34093745
power-baa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Mark BarinsteinИз хранимой процедуры какой?
С, java, sql?

из процедур SQL
про java я читал, что там другие хранимые процедуры
вызывать нельзя.
...
Рейтинг: 0 / 0
31.10.2006, 12:49
    #34093848
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Из процедур SQL:
1. Про статический метод вызова почитайте тут
2. Про динамический здесь

power-baaпро java я читал, что там другие хранимые процедуры
вызывать нельзя.Еще как можно! Ссылочку дадите, где вы это прочитали?
...
Рейтинг: 0 / 0
31.10.2006, 14:24
    #34094302
power-baa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Mark BarinsteinИз процедур SQL:
1. Про статический метод вызова почитайте тут
2. Про динамический здесь

power-baaпро java я читал, что там другие хранимые процедуры
вызывать нельзя.Еще как можно! Ссылочку дадите, где вы это прочитали?

Из этого не понятно как делать вызов из SQL процедуры.
Про java я читал в своём инф. центре.
...
Рейтинг: 0 / 0
31.10.2006, 15:27
    #34094627
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
CREATE PROCEDURE TEST1(IN I INT, OUT J INT)
LANGUAGE SQL
BEGIN
  SET J= 2 *I;
END@

CREATE PROCEDURE TEST2(IN I INT, OUT J INT)
LANGUAGE SQL
BEGIN
  CALL TEST1(I,J);
END@

CALL TEST2(I,?)@
...
Рейтинг: 0 / 0
01.11.2006, 08:45
    #34096162
golsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
2 Mark Barinstein
Это про то, что из SQL/С SP нельзя вызывать JAVA SP и наоборот.
...
Рейтинг: 0 / 0
01.11.2006, 11:01
    #34096546
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
golsaЭто про то, что из SQL/С SP нельзя вызывать JAVA SP и наоборот.В v7, вероятно, так и было (точно уже не помню).
В v8.2 единственное ограничение, которое я нашел ( тут ), это невозможность обработать result set в SQL SP, вызвавшей external SP.
См. также
Routine invocation
Java sp
...
Рейтинг: 0 / 0
01.11.2006, 13:21
    #34097276
power-baa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Mark Barinstein
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
CREATE PROCEDURE TEST1(IN I INT, OUT J INT)
LANGUAGE SQL
BEGIN
  SET J= 2 *I;
END@

CREATE PROCEDURE TEST2(IN I INT, OUT J INT)
LANGUAGE SQL
BEGIN
  CALL TEST1(I,J);
END@

CALL TEST2(I,?)@


А если я хочу набор данных, возвращаемый вызванной процедурой,
поместить в курсор ?
...
Рейтинг: 0 / 0
01.11.2006, 13:40
    #34097399
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
1. Вызываемая процедура должна декларировать курсор(ы) как
WITH RETURN TO CALLER
2. Делаете CALL
3. Потом
ASSOCIATE LOCATORS
4. И. наконец,
ALLOCATE CURSOR
...
Рейтинг: 0 / 0
02.11.2006, 11:07
    #34099991
power-baa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Mark Barinstein1. Вызываемая процедура должна декларировать курсор(ы) как
WITH RETURN TO CALLER
2. Делаете CALL
3. Потом
ASSOCIATE LOCATORS
4. И. наконец,
ALLOCATE CURSOR

DECLARE LOC1 RESULT_SET_LOCATOR VARYING;
DECLARE LOC2 RESULT_SET_LOCATOR VARYING;

CALL PD190439.BA_01(30);
ASSOCIATE RESULT SET LOCATORS (LOC1, LOC2)
WITH PROCEDURE PD190439.BA_01;
ALLOCATE C1 CURSOR FOR RESULT SET LOC1;
OPEN C1;

Данных на выходе нет . Курсор пуст. Почему ?
...
Рейтинг: 0 / 0
02.11.2006, 11:29
    #34100096
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Потому что эти команды предназначены для обработки курсора в вызывающей процедуре.
Если надо, чтоб курсор выдавался из внутренней процедуры наружу (клиенту), надо делать так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
CREATE PROCEDURE T1()
LANGUAGE SQL
DYNAMIC RESULT SETS  1 
BEGIN
  DECLARE C1 CURSOR WITH RETURN TO CLIENT FOR
   SELECT * FROM SYSIBM.SYSDUMMY1;
  OPEN C1;
END@

CREATE PROCEDURE T2()
LANGUAGE SQL
DYNAMIC RESULT SETS  1 
BEGIN
  CALL T1();
END@
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
22.04.2008, 04:26
    #35270045
Николаха
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Т.е. как я понял, если процедура возвращает какой-то курсо (Набор данных) его никак нельзя получить в вызываемой процедуре??
...
Рейтинг: 0 / 0
22.04.2008, 10:44
    #35270475
чя321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
Нет читай внимательно документацию
...
Рейтинг: 0 / 0
24.04.2008, 03:53
    #35275891
Николаха
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры DB2 из другой ХП
чя321Нет читай внимательно документацию

Всё, спасибо я понял!
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Вызов хранимой процедуры DB2 из другой ХП / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]