Search Postgresql Archives

Re: cannot use result of (insert .. returning)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Pavel,

 

Thank you for your reply, but in this case the “INSERT INTO ... RETURNING field,... INTO STRICT variable,...;” is what works best for me currently.

 

Regards,

 

Dale Harris

 

 

-----Original Message-----
From: Pavel Stehule [mailto:pavel.stehule@xxxxxxxxx]
Sent: Thursday, 14 August 2008 17:59
To: Dale Harris
Cc: pgsql-general@xxxxxxxxxxxxxx
Subject: Re: [GENERAL] cannot use result of (insert .. returning)

 

Hello

 

you can wrap INSERT STATEMENT into function. Than you can do anything

with result;

 

create table f(a timestamp);

 

postgres=# select * from (insert into f values(current_timestamp)

returning *) x where x.a > now();

ERROR:  syntax error at or near "into"

LINE 1: select * from (insert into f values(current_timestamp) retur...

                              ^

create or replace function if() returns setof f as $$begin return

query insert into f values(current_timestamp) returning *; return;

end$$ language plpgsql;

 

postgres=# select * from if() where a > now();

 a

---

(0 rows)

 

regards

Pavel Stehule

 

2008/8/14 Dale Harris <itsupport@xxxxxxxxxxxxxx>:

> Hello,

> 

> 

> 

> I'm having the same issues as dvs had in message thread

> http://archives.postgresql.org/pgsql-general/2008-05/msg01117.php as I want

> to be able to use the result from an INSERT INTO table(...) VALUES(...)

> RETURNING new_row_ID.

> 

> 

> 

> I would ideally like to be able to capture the RETURNING value into a

> variable to use immediately.  Does anyone have a solution?

> 

> 

> 

> Dale.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux