PostgreSQL:查找有关用户定义类型的信息

Ant*_* F. 5 postgresql user-defined-types system-tables

有关用户定义类型的信息存储在哪里?

是否有一些表包含有关用户定义的复合类型的字段,其名称等的信息?

obe*_*tet 5

可以像这样检索有关构成复合类型的字段的信息:

select * from pg_attribute where attrelid =
  (select typrelid from pg_type where typname = 't_employee')
Run Code Online (Sandbox Code Playgroud)

其中t_employee是复合类型的名称。

  • 虽然 @francs 的答案链接到相应的文档,但这个答案可以立即使用,即使是 5 年后! (2认同)

fra*_*ncs 4

目录 pg_type 存储有关数据类型的信息。基本类型和枚举类型(标量类型)是使用 CREATE TYPE 创建的,域是使用 CREATE DOMAIN 创建的。

有关 pg_type 的更多信息请访问 http://www.postgresql.org/docs/9.0/static/catalog-pg-type.html