Object ID reference - Mailing list pgsql-hackers

From alex@AvengerGear.com (Debian User)
Subject Object ID reference
Date
Msg-id 20020308144222.A17099@AvengerGear.com
Whole thread Raw
Responses Re: Object ID reference
List pgsql-hackers
Hi I'm new to the list, and I'm new to the PostgreSQL also. But I have been using Object Relation Mapping for a period
oftime. I would like to put native binding with PostgreSQL . It is fairly easy to read and write Object into the
relayedtable e.g.
 

create table base (
myname text,
unique( myname )
);

create table child (
myfather base,
myname text
);

INSERT INTO base ( myname ) Values ( 'alex' ) ;
INSERT 56578 1  <<---- oid
INSERT INTO child ( myfather, myname ) values ( 56578::base, 'alexbaby' );
INSERT 56579 1  <<---- oid

However, there is no way to get the value back in the WHERE clause. because the return type is 'base' but the value
output( correct me if I'm wrong from digging the source by hand )  is actually oid returns int4 from internal seteval()
function.
select * from child;
myfather  myname
-------------------
56578      alexbaby

It could be a easy fix in the jdbc, or c  to match the seteval(base.oid) with int4.[string, string] compare,  but then
Ineed to loop through the full Record Set by hand to get the data. is there a possible way to do some function to
convertthe TYPE 'base' to oid or int4 or string?
 
so I can do something like this

SELECT * from child where myfather=56578::base;

or how am I getting internal seteval to work right with the return set from a custom function.
I really want to see this coming out right... thanks a lot.
Alex





pgsql-hackers by date:

Previous
From: GB Clark
Date:
Subject: Re: bug in psql
Next
From: "Dave Cramer"
Date:
Subject: Re: Object ID reference