On Sat, 2004-10-09 at 05:35, Tom Lane wrote: > Oliver Elphick <[EMAIL PROTECTED]> writes: > > I tried to use regclass() in a plpgsql function to derive a tablename > > from its oid so as to build a command string, but I am unable to use the > > value returned because it cannot be cast to anything. Therefore I will > > have to use a complex query on the catalog to do the same work. > > Hmm? plpgsql is about as permissive as you can get on this point. > Just assign the result to a variable of the desired type, and it will > do it if the textual representations are at all compatible. Example: > > regression=# create function foo(oid) returns text as ' ... > > I'm on record that we should allow (explicit) casting to and from text > for all types, using the types' I/O functions to implement it. But > plpgsql already provides essentially that mechanism in its assignment > operations. You just hafta do the explicit assignment...
Thanks for the example. I was trying to do cmd = ''SELECT * FROM '' || regclass(someoid); -- Oliver Elphick [EMAIL PROTECTED] Isle of Wight http://www.lfix.co.uk/oliver GPG: 1024D/A54310EA 92C8 39E7 280E 3631 3F0E 1EC0 5664 7A2F A543 10EA ======================================== "Every good gift and every perfect gift is from above, and cometh down from the Father of lights, with whom is no variableness, neither shadow of turning." James 1:17 ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faqs/FAQ.html