[英]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.