powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как получить доступ к элементам переменной типа RECORD ?
3 сообщений из 3, страница 1 из 1
Как получить доступ к элементам переменной типа RECORD ?
    #39253793
FndCentu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Я начинающий пользователь PL/pgSQL. До этого работал с PLSQL на ORACLE. Помогите, пожалуйста, разобраться с проблемой доступа к элементам типа RECORD в теле функции.
Есть функция F1, которая возвращает RECORD из 2-х элементов :

CREATE OR REPLACE FUNCTION F1(
IN p1 integer,
OUT p2 integer,
OUT p3 integer)
RETURNS record AS
$BODY$
begin

p2 = p1 + 10;
p3 = p2 * 2;

end;
$BODY$
LANGUAGE plpgsql;

Есть вторая функция F2, которая вызывает первую функцию F1
Функция F2 :

CREATE OR REPLACE FUNCTION F2(par1 int)
returns record
as $$
declare
rec1 record;

BEGIN

select F1(par1) into rec1;

return rec1;
END;
$$
LANGUAGE plpgsql;

Как оказалось, выполнить SELECT F1 в функции F2 я могу только в структуру RECORD.
Скажите, пожалуйста, как мне получить доступ к каждому элементу rec1 (тип RECORD) в отдельности в теле функции F2 ?

Спасибо.
...
Рейтинг: 0 / 0
Как получить доступ к элементам переменной типа RECORD ?
    #39253794
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FndCentu,

Код: sql
1.
2.
3.
4.
5.
6.
7.
...
FOR rec1 IN
  SELECT * FROM f1(par1)
LOOP
  RAISE NOTICE 'I can see p2(%) and p3(%)', rec1.p2, rec1.p3;
END LOOP;
...
...
Рейтинг: 0 / 0
Как получить доступ к элементам переменной типа RECORD ?
    #39253802
FndCentu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как получить доступ к элементам переменной типа RECORD ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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