powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Курсоры в хранимках
3 сообщений из 3, страница 1 из 1
Курсоры в хранимках
    #32360996
nwill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

Я до недавнего времени в оракле работал. Там в разделе описания переменных можно описать именованый курсор, типа

cursor MyCursor is
select ... from ...

BEGIN
open MyCursor;
loop
fetch ...;
exit when MyCursor%notfound;
....
end loop;
close MyCursor;
END;

Подскажите, пожалуйста, аналогичное в IB. Необходимо переделать мою хранимку под IB меньшей кровью :)

Заранее большое спасибо.
...
Рейтинг: 0 / 0
Курсоры в хранимках
    #32360999
Roman Ignatiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
for select - просто цикл по результатам запроса
...
Рейтинг: 0 / 0
Курсоры в хранимках
    #32362250
Фотография KiLLun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пример хранимки:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
CREATE PROCEDURE REPORT_PLAN
RETURNS (
    DATA1 INTEGER,
    DATA2 VARCHAR( 500 ),
    DATA3 VARCHAR( 500 ),
    DATA4 VARCHAR( 500 ))
AS
declare variable k1 integer;
declare variable k2 integer;
declare variable k3 integer;
declare variable kv integer;
declare variable kv1 integer;
begin
  data1= 0 ;
  for select ind from objects where typeind= 63  into :k1 do begin


  select count(ind) from pvalues where ind= 1193  and objectind=:k1 into :k2;
  if (k2> 0 ) then begin
  data1=data1+ 1 ;
  select parentind from objects where ind=:k1 into :k3;
  select pval from get_one_param_value( 642 ,:k3) into :data2;
  select count(ind) from pvalues where ind= 734  and objectind=:k1 into :k2;
  if (k2> 0 ) then begin
  select pval from get_one_param_value( 734 ,:k3) into :data2;
  end
  select pval from get_one_param_value( 781 ,:k1) into :data3;
  select pval from get_one_param_value( 1193 ,:k1) into :data4;
              suspend;
             end
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Курсоры в хранимках
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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