Re: Getting the oid of an anyelement

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: Getting the oid of an anyelement
Дата
Msg-id 162867790909101147g478b7b93p8a1a599129096656@mail.gmail.com
обсуждение исходный текст
Ответ на Getting the oid of an anyelement  (Scott Bailey <artacus@comcast.net>)
Список pgsql-general
Hello

please, try to look on function pg_typeof

postgres=# CREATE OR REPLACE FUNCTION x(anyelement)
RETURNS oid AS $$
SELECT pg_typeof($1)::oid; $$ LANGUAGE sql;
CREATE FUNCTION
postgres=# select x(10);
 x
----
 23
(1 row)

postgres=# select x(current_date);
  x
------
 1082
(1 row)

postgres=#

regards
Pavel Stehule

2009/9/10 Scott Bailey <artacus@comcast.net>:
> If I've got a function (sql or plpgsql) that takes anyelement as a param,
> how do I determine the type name or oid that was actually passed in? I
> figure there is probably a function for this but darn if I can find it.
>
> Specifically, I'm trying to make a function like Oracle's dump that will
> take anything as input and return the internal representation of it. So I
> want to determine what type was passed in and call the appropriate send
> function.
>
>  SELECT dump(current_date);
>
>  dump
>  ------------------------------------------
>  Type=date OID=1082 Len=4 Data=(0,0,13,212)
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

В списке pgsql-general по дате отправления:

Предыдущее
От: "Peter Headland"
Дата:
Сообщение: Re: COPY command character set
Следующее
От: Richard Huxton
Дата:
Сообщение: Re: Unable to drop a table due to seemingly non-existent dependencies