On Mon, Jan 03, 2005 at 02:32:44PM +0200, [EMAIL PROTECTED] wrote:Hi,
I have the following problem:
I use libpq inside SRF functions (like in dblink) and I create some tables to store results coming from remotly executed queries. (These tables are not temporary cause I want to use them later as a form of cache.) Then I try to open these tables to get the results. Actually I modify an already available Query to refer to these new tables instead of the correspoding local tables. To do so I need the Oids of theses new tables which I get using the following query:
select oid from pg_class where relname='foo'
What language? What version of postgresql?
I'm using C on PostgreSQL 7.4.2
It's not exactly clear from your description but is there a reason you
are using libpq and not the SPI interface? If you create a connection
using libpq to the same database then the queries executed through that
connection will not be able to see the transaction of the SRF you are
writing. The SPI interface is for executing queries within the same
transaction.
Now I think I understand what happens. You see, I used libpq to create the tables and SPI to retrieve the Oids ($%&^#$%&!!). When I tried to also retrieve the Oid using libp it worked. I suppose using SPI both to create the tables and retrieve the Oids will be the right solution. I'll try it!
Hope this helps,
It did help to understand what was going on!
Thanks!!
Ntinos Katsaros
---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html