postgresql 列出表名和字段名称类型

列出表名

SELECT tablename from pg_tables
WHERE tablename not like 'pg%'
and tablename not like 'sql_%'
order by tablename ;
image.png
  • 排除postgresql 中的系统表 按表名排序

列出字段类型和名称

SELECT
    format_type (A .atttypid, A .atttypmod) AS TYPE,
    A .attname AS NAME
FROM
    pg_class AS C,
    pg_attribute AS A
WHERE
    C .relname = 'your tablename'
AND A .attrelid = C .oid
AND A .attnum > 0;
image.png
  • atttypid 字段类型对应id
  • atttypmod 字段类型设置
  • format_type 获取一个数据类型的SQL名称
  • pg_class 所有表的信息。 oid是relname对应的表的唯一id
  • pg_attribute 所有属性的信息 attrelid 是 这条属性对应的表的id
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容