Re: pg_proc and pg_type - Mailing list pgsql-general

From snpe
Subject Re: pg_proc and pg_type
Date
Msg-id 200209171358.24845.snpe@snpe.co.yu
Whole thread Raw
In response to Re: pg_proc and pg_type  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-general
I have join pg_type and pg_proc and get view arguments and return value
(btw for getProcedureColumns in JDBC)
This is not enough.I have join all rows from pg_type, which have any from
pg_proc.oidvector (I must know length from oidvector array)
That is fine operator which is true if oid in any oid from oidvector, else
false and that be simple pg_proc.oidvector=pg_proc.oid
I don't know how any function or operator add in core postgresql (procedure
for this), but I need this operator and function for size,scale and precision
for any type (special for varchar,char,numeric etc. - this is like
format_type function, but special function for size, scale and precision).
regards
Haris Peco
On Tuesday 17 September 2002 03:56 am, Bruce Momjian wrote:
> snpe wrote:
> > Hello,
> >   I have column proargtypes (oidvector) in pg_proc and oid in pg_type
> > Can I join tables pg_proc and pg_type and get row for every argument of
> > functions
>
> oidvector is a fixed-width array.  However, you can access individual
> elements, at least in the 7.3 beta I use:
>
>     select proargtypes[0] from pg_proc;
>      proargtypes
>     -------------
>               23
>               23
>
> In <7.3 the length is fixed at 16, while in >=7.3 the length is 32.
>
> You can then join that to pg_type:
>
>     test=> select typname from pg_proc, pg_type
>     test-> where proargtypes[0] = pg_type.oid;
>        typname
>     -------------
>      int4
>      int4
>      int4
>      int4
>
> Hope that helps.


pgsql-general by date:

Previous
From: "Jerome Chochon"
Date:
Subject: Re: [HACKERS] PostgreSQL 7.3: help on new CREATE TYPE
Next
From: "H. Meyer"
Date:
Subject: Postgres 7.3b1 + JDBC3 (2002-09-05) truncates SQL commands?