Re: Data type display

Поиск
Список
Период
Сортировка
От Andreas Pflug
Тема Re: Data type display
Дата
Msg-id 43DF4B00.70008@pse-consulting.de
обсуждение исходный текст
Ответ на Data type display  (Peter Eisentraut <peter_e@gmx.net>)
Список 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 по дате отправления:

Предыдущее
От: Andreas Pflug
Дата:
Сообщение: Re: GrantWizard Property Crack?
Следующее
От: Peter Eisentraut
Дата:
Сообщение: SQL display of inheriting tables wrong