PostgreSQL:将用户定义的函数从一个数据库复制/导入到另一个数据库

时间:2018-06-01 15:26:35

标签: postgresql function

我有一个类似this的问题,但对于PostgreSQL。我在我的Windows 10(x64)机器上使用PostgreSQL 9.5.12(x64)。我在数据库plpgsql中有一个函数(用my_func()编写)my_db。可以在postgres中将此函数导入/复制到另一个数据库吗?

2 个答案:

答案 0 :(得分:3)

您可以使用pg_get_functiondef获取函数定义,如下所示:

SELECT pg_get_functiondef(oid) AS definition FROM pg_proc WHERE proname = 'my_func';

答案 1 :(得分:3)

在psql中,\ef命令将在编辑器中打开该函数,然后将其保存到文件中......遗憾的是,上次我检查时,psql的Windows版本的用户界面非常模糊

pg_dump数据库的--schema-only也将包含所有函数定义。然后,您可以在编辑器中打开它并复制功能。