Rules, functions and RETURNING

Поиск
Список
Период
Сортировка
От Nico Mandery
Тема Rules, functions and RETURNING
Дата
Msg-id 4AB25758.60702@geops.de
обсуждение исходный текст
Ответы Re: Rules, functions and RETURNING  (Adrian Klaver <aklaver@comcast.net>)
Список pgsql-sql
Hello list,

I am trying to wirte a rule which calls a PLPgSQL-function upon an
Insert in a table. Here is a somewhat simplified example of what i got
so far:

CREATE TABLE mytable (mytable_id serial PRIMARY KEY,something text
);


CREATE OR REPLACE FUNCTION _rule_insert_my(something text) RETURNS integer AS
$BODY$
BEGIN-- do somethingreturn mytable_id;
END;
$BODY$ LANGUAGE 'plpgsql' VOLATILE COST 100;


CREATE OR REPLACE RULE _insert AS   ON INSERT TO mytable DO INSTEAD  SELECT
_rule_insert_my(new.something) AS mytable_id;


So far this works quite well. But I got a few situations where I need to
do a query which uses RETURNING to get the value of the newly generated
primary key. Like this one:

INSERT INTO mytable (something) VALUES ('some text') RETURNING mytable_id;

This breaks because I did not specify a RETURNING-Clause in the rule.
But how can specify RETURNING with SELECT?


Thank your in advance for your help.

regards,
nico

-- 
Nico Mandery


В списке pgsql-sql по дате отправления:

Предыдущее
От: Leo Mannhart
Дата:
Сообщение: Re: Hibernate, web application and only one sequence for all primary keys
Следующее
От: Gavin McCullagh
Дата:
Сообщение: extracting from epoch values in pgsql