繁体   English   中英

仅导出Postgres中的视图

[英]Export only views in Postgres

有没有办法只从Postgres架构导出视图?

我正在使用Postgres 8.4。

谢谢。

没有直接的标志可以做到这一点,但使用我们最喜欢的查询 - 模式生成命令技术:

select string_agg( '-t ' || quote_ident(nspname) || '.' || quote_ident(relname), ' ' )
  from pg_class join pg_namespace on pg_namespace.oid = pg_class.relnamespace
  where relkind = 'v' and not (nspname ~ '^pg_' or nspname = 'information_schema');

这将生成一个可以与pg_dump命令一起使用的字符串,例如:

 -t media.duplicated_component -t adv.advert_view_distribution 

然后您可以直接拼接到命令行:

pg_dump $(psql -c "select string_agg(...etc...)" db) db

如果您的每个视图都以某个前缀为前缀,则可以使用以下命令:

pg_dump -s -t 'prefix*' dbname > db.dump

或者你可以使用-t切换尽可能多的视图名称...请参阅pg_dump的联机帮助页,最后是示例...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM