Postgres 如何从外部服务器传输所有枚举
Postgres how to transfer all enums from foreign server
我有两个数据库,我希望能够在它们之间传输数据运行,所以我想将一个大模式从一个数据库导入到另一个数据库,其中有枚举的分配。所以我运行进入这里描述的问题。
所以我想像“pg_dump枚举”这样的东西来获取枚举,然后运行将它们转移到另一个数据库。
但是我不能这样的命令。你能帮帮我吗?
您可以使用如下查询导出定义:
SELECT format(
'CREATE TYPE %s AS ENUM (%s);',
enumtypid::regtype,
string_agg(quote_literal(enumlabel), ', ')
)
FROM pg_enum
GROUP BY enumtypid;
我有两个数据库,我希望能够在它们之间传输数据运行,所以我想将一个大模式从一个数据库导入到另一个数据库,其中有枚举的分配。所以我运行进入这里描述的问题
所以我想像“pg_dump枚举”这样的东西来获取枚举,然后运行将它们转移到另一个数据库。 但是我不能这样的命令。你能帮帮我吗?
您可以使用如下查询导出定义:
SELECT format(
'CREATE TYPE %s AS ENUM (%s);',
enumtypid::regtype,
string_agg(quote_literal(enumlabel), ', ')
)
FROM pg_enum
GROUP BY enumtypid;