Le mardi 2 octobre 2012 15:01:08, Willy-Bas Loos a écrit :> Hi,> (postgres 9.1)> I was doing something like this in a plpgsql function, but i got a Syntax> Error.> > t_var:=(insert into table1(field2) values ('x') returning field1);> > Is there no support for using RETURNING in insert, update, delete queries> to fill a variable in plpgsql? Use the following : INSERT ... RETURNING expressions INTO [STRICT] target;UPDATE ... RETURNING expressions INTO [STRICT] target;DELETE ... RETURNING expressions INTO [STRICT] target; http://www.postgresql.org/docs/9.1/static/plpgsql-statements.html Else if you have multiple rows do something like:FOR my_update IN UPDATE ... RETURNING * LOOP-- Cédric Villemain +33 (0)6 20 30 22 52http://2ndQuadrant.fr/PostgreSQL: Support 24x7 - Développement, Expertise et Formation
Le mardi 2 octobre 2012 15:01:08, Willy-Bas Loos a écrit :
> Hi,
> (postgres 9.1)
> I was doing something like this in a plpgsql function, but i got a Syntax
> Error.
>
> t_var:=(insert into table1(field2) values ('x') returning field1);
> Is there no support for using RETURNING in insert, update, delete queries
> to fill a variable in plpgsql?
Use the following :
INSERT ... RETURNING expressions INTO [STRICT] target;
UPDATE ... RETURNING expressions INTO [STRICT] target;
DELETE ... RETURNING expressions INTO [STRICT] target;
http://www.postgresql.org/docs/9.1/static/plpgsql-statements.html
Else if you have multiple rows do something like:
FOR my_update IN UPDATE ... RETURNING * LOOP
--
Cédric Villemain +33 (0)6 20 30 22 52
http://2ndQuadrant.fr/
PostgreSQL: Support 24x7 - Développement, Expertise et Formation
pgsql-general by date:
Соглашаюсь с условиями обработки персональных данных