无论如何导出PostgreSQL架构压缩?

无论如何导出PostgreSQL架构压缩?,第1张

概述当我在PostgreSQL中创建一个表时,我使用的SQL如下所示: CREATE TABLE domain ( id serial, domain character varying(60) NOT NULL, banned boolean, created timestamp NOT NULL); 但是,当我导出模式时,我会获得一个完整的,未压缩的版本,其中包含 当我在Postgresql中创建一个表时,我使用的sql如下所示:
CREATE table domain (    ID serial,domain character varying(60) NOT NulL,banned boolean,created timestamp NOT NulL);

但是,当我导出模式时,我会获得一个完整的,未压缩的版本,其中包含拥有该表和完整序列的垃圾.无论如何在没有至少所有者部分的情况下获得出口?

CREATE table domain (    ID integer NOT NulL,created timestamp without time zone NOT NulL);ALTER table public.domain OWNER TO postgres;CREATE SEQUENCE domain_ID_seq    START WITH 1    INCREMENT BY 1    NO MAXVALUE    NO MINVALUE    CACHE 1;ALTER table public.domain_ID_seq OWNER TO postgres;ALTER SEQUENCE domain_ID_seq OWNED BY domain.ID;SELECT pg_catalog.setval('domain_ID_seq',3,true);

最重要的是,我希望能够将模式传递给其他人(甚至可能不使用Postgresql),而无需手动编辑文件并删除特定于我的数据库用户的部分.简短的手也更容易阅读.

这样的东西会让你成为那里的一部分:
pg_dump --schema-only       \        --no-owner          \        --no-privileges     \        --table=$table_name \        $DATABASE_name

你仍然会在顶部拥有所有SET …东西,并在最后拥有约束,序列和索引.

你也许可以按摩输出

echo "\d $tablename" | psql -d $DATABASE -U $USER

用一点脚本编写你想要的东西.

你也可以在系统表中找到你想要的东西,但这可能比手动砍掉pg_dump所说的中间更多.

总结

以上是内存溢出为你收集整理的无论如何导出PostgreSQL架构压缩?全部内容,希望文章能够帮你解决无论如何导出PostgreSQL架构压缩?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/sjk/1181411.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存