Joel Burton wrote:
> Is there a function already in the backend to return a class oid, given a
> name, by looking up the table in the current_schemas path? Would it make
> sense for us to expose this, or write one, so that this small wheel doesn't
> have to be re-invented everytime someone wants to find a table by just the
> name?
>
> Something like:
>
> findtable(text) returns oid
> findtable("foo") -> oid of foo (given current search path)
> findtable("s.foo") -> oid of s.foo
>
> I can write something in plpgsql (iterating over the array, checking each,
> etc.), however, it would be nice if something was already there.
I think this already exists:
test=# select 'joe.foo'::regclass::oid; oid
-------- 125532
(1 row)
test=# select 'public.foo'::regclass::oid; oid
-------- 125475
(1 row)
test=# select 'foo'::regclass::oid; oid
-------- 125475
(1 row)
test=# select current_schema(); current_schema
---------------- public
(1 row)
Joe