SQL,获取所有自定义数据类型的列表

SQL, Get a list of all the custom data types

我需要使用 sql 命令或 jdbc 在 sql(oracle 和 postgres)中检索所有用户定义数据类型的列表。 现在我只知道如何使用

检索源代码
SELECT text FROM all_source WHERE name='type'

Oracle 几乎所有内容都有数据字典视图。您可以 select 来自 ALL_TYPES and ALL_TYPE_ATTRS。后者显示了每种类型的所有者。

Postgres 没有相同的功能,因此您可以使用来自 here

的查询
SELECT      n.nspname as schema, t.typname as type 
FROM        pg_type t 
LEFT JOIN   pg_catalog.pg_namespace n ON n.oid = t.typnamespace 
WHERE       (t.typrelid = 0 OR (SELECT c.relkind = 'c' FROM pg_catalog.pg_class c WHERE c.oid = t.typrelid)) 
AND     NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type el WHERE el.oid = t.typelem AND el.typarray = t.oid)
AND     n.nspname NOT IN ('pg_catalog', 'information_schema')