Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Помогите разобраться с использованием своих типов... / 5 сообщений из 5, страница 1 из 1
06.04.2006, 14:22
    #33649105
algo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с использованием своих типов...
У меня есть тип
CREATE TYPE "my_schema"."type__event_data" AS (
"msg" INTEGER,
"obj" INTEGER,
"elm" INTEGER
);

здесь я его генерю
CREATE or replace FUNCTION "my_schema"."mktype__event_data"(integer,integer,integer) RETURNS "my_schema"."type__event_data" AS '
SELECT $1 AS msg,
$2 AS obj,
$3 AS elm;
' LANGUAGE SQL;


есть процедура где надо его сгенерить и использовать
create procedure my_schema.event_get_data(integer,integer,integer)
returns "my_schema"."type__event_data" as '
declare
evt_data "my_schema"."type__event_data"; -- переменная моего типа
numrows integer;
sequence_value integer;
begin
-- при попытке
select into evt_data my_schema.mktype__event_data($1,$2,$3);
-- имеем ERROR: syntax error at or near "evt_data"
-- CONTEXT: compile of PL/pgSQL function "event_get_data" near line 4
...
end;
' LANGUAGE plpgsql;

Понимаю, что для переменной evt_data в процедуре неверно описан тип evt_data.
В случае записи или поля записи
tablename%ROWTYPE;
tablename.columnname%TYPE;

А в моем случае как быть???


----------------------------
PostgreSQL 7.4.1 on linux
...
Рейтинг: 0 / 0
06.04.2006, 14:51
    #33649208
4321
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с использованием своих типов...
для algotablename%ROWTYPE;

нарно как то так
CREATE or replace FUNCTION "my_schema"."mktype__event_data"(integer,integer,integer) RETURNS SETOF "my_schema"."type__event_data" AS '
SELECT $1 AS msg,
$2 AS obj,
$3 AS elm;
' LANGUAGE SQL;

и позже чето типа (синтаксис подрихтовать - не вполне помню):
select * into evt_data FROM my_schema.mktype__event_data($1,$2,$3);
...
Рейтинг: 0 / 0
06.04.2006, 15:13
    #33649316
algo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с использованием своих типов...
4321RETURNS SETOF "my_schema"."type__event_data" AS '
и позже чето типа (синтаксис подрихтовать - не вполне помню):
select * into evt_data FROM my_schema.mktype__event_data($1,$2,$3);

Спасибо 4321, работает..
...
Рейтинг: 0 / 0
07.04.2006, 10:28
    #33651078
Funny_Falcon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с использованием своих типов...
SETOF не обязательно
...
Рейтинг: 0 / 0
07.04.2006, 12:51
    #33651819
4321
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с использованием своих типов...
Funny_FalconSETOF не обязательнопадазревал
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Помогите разобраться с использованием своих типов... / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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