Re: Data type display - Mailing list pgadmin-hackers

From Andreas Pflug
Subject Re: Data type display
Date
Msg-id 43DF4B00.70008@pse-consulting.de
Whole thread Raw
In response to Data type display  (Peter Eisentraut <peter_e@gmx.net>)
List pgadmin-hackers
Peter Eisentraut wrote:
> Is there a reason why pgAdmin uses internal type names like int2 everywhere,
> whereas the supposedly user-friendly approach would be that external names
> like smallint should be used.  (Compare to the output of psql and pg_dump.)
> You can obtain the friendly name using the backend function format_type,
> which has been available at least since 7.3.  This would also avoid the need
> for manual concatenating with "[]" for array types.

I wasn't aware of that function back those days...


> Also, the lists of data types you get when creating a table are not sorted
> very well.  The beginning seems to be alphabetical, but the geometry types
> are at the end.
>
> Perhaps, as an interface improvement, remove all the array types from the list
> but instead make a separate checkbox "Array" instead.

pgAdmin uses the following query when retrieving valid types:

SELECT
typname, t.oid, CASE WHEN typelem > 0 THEN typelem ELSE t.oid END as
elemoid, typlen, typtype, nspname,
   FROM pg_type t
   JOIN pg_namespace nsp ON typnamespace=nsp.oid
  WHERE typisdefined
    AND typtype IN ('b', 'd')
  ORDER BY CASE WHEN typtype='d' THEN 0 ELSE 1 END,
    (t.typelem>0)::bool,
    t.typname

serial and bigserial are added 'manually' if appropriate.

The goal was to have the types grouped: domain first, standard types
next, then array types.

I'm not too happy about the combobox at all, it's much too big. I'd
really like some hierarchical selection method, maybe a combobox with a
dropdown tree instead of a list. Wanted to implement this for ages now...

Regards,
Andreas



pgadmin-hackers by date:

Previous
From: Andreas Pflug
Date:
Subject: Re: GrantWizard Property Crack?
Next
From: Peter Eisentraut
Date:
Subject: SQL display of inheriting tables wrong