PostgreSQL:如何列出所有可用的数据类型?

时间:2013-05-02 16:36:55

标签: sql postgresql postgresql-9.1 postgresql-9.2

问题:

在PostgreSQL中(使用SQL,而不是控制台),如何列出所有可用的datataypes?

理想情况如下: http://www.java2s.com/Code/PostgreSQL/Postgre-SQL/Displaysalldatatypesintheconnecteddatabasewithcomments.htm

它还应该列出用户定义的类型,如果有的话 就像pgAdmin3中的列表一样,您可以在其中为表中的新列定义数据类型。

2 个答案:

答案 0 :(得分:20)

PostgreSQL中的“数据类型”实际上包括原始(内置)类型,扩展添加的类型,用户定义的复合类型,域和表行类型。目前尚不清楚您对哪些内容感兴趣。给定数据库中可用的所有类型都列在该数据库的pg_catalog.pg_type中,因此您可能需要过滤结果。请参阅the documentation for the pg_type system catalog table

可用但未安装的扩展程序的类型未列出。没有办法列出当前数据库中未安装的扩展提供的类型。

要获得更漂亮的类型列表,请使用psql的{​​{1}}命令。您可以通过使用\dT *标志运行psql来查看执行的基础SQL:

-E

答案 1 :(得分:14)

select * from pg_type;

pg_type