加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何获取所有对象的列表? – PostgreSQL

发布时间:2020-12-13 16:02:56 所属栏目:百科 来源:网络整理
导读:我需要db中包含的对象列表:表,序列等… 获取表格列表是我唯一能够找到的. 我能用什么来获取一切的想法? 解决方法 您可以使用INFORMATION_SCHEMA表以及系统目录来执行此操作. http://www.alberton.info/postgresql_meta_info.html 例如., 列表序列 SELECT r
我需要db中包含的对象列表:表,序列等…

获取表格列表是我唯一能够找到的.

我能用什么来获取一切的想法?

解决方法

您可以使用INFORMATION_SCHEMA表以及系统目录来执行此操作.

http://www.alberton.info/postgresql_meta_info.html

例如.,

列表序列

SELECT relname
FROM pg_class
WHERE relkind = 'S'
AND relnamespace IN (
    SELECT oid
    FROM pg_namespace
    WHERE nspname NOT LIKE 'pg_%'
    AND nspname != 'information_schema'
);

列表触发器

SELECT trg.tgname AS trigger_name
  FROM pg_trigger trg,pg_class tbl
 WHERE trg.tgrelid = tbl.oid
   AND tbl.relname !~ '^pg_';
-- or
SELECT tgname AS trigger_name
  FROM pg_trigger
 WHERE tgname !~ '^pg_';

-- with INFORMATION_SCHEMA:

SELECT DISTINCT trigger_name
  FROM information_schema.triggers
 WHERE trigger_schema NOT IN
       ('pg_catalog','information_schema');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读