postgresql - 在 postgresql 中查找现有函数脚本的命令是什么?

标签 postgresql

因为我们正在使用 sp_helptext [过程名称] 在 Sqlserver 中获取 SP 脚本,所以我需要可用于从 postgresql 检索函数脚本的命令。

请帮忙....

最佳答案

如果您使用的是 psql(命令行界面),您可以使用 \df+,正如 tobixen 已经说明的那样(并且在手册中有明确记录)。

如果您需要从 SQL 查询中执行此操作,请查看 system information functions .您正在寻找 pg_get_functiondef()

select pg_get_functiondef(oid)
from pg_proc
where proname = 'your_function';

如果你正在处理具有不同数量参数的重载函数,你需要在名称中包含参数签名:

select pg_get_functiondef('public.foo(int)'::regprocedure);
select pg_get_functiondef('public.foo(int,int)'::regprocedure);

将检索函数 foo 的重载版本(一个版本具有单个 int 参数,另一个版本具有两个 int 参数)。

关于postgresql - 在 postgresql 中查找现有函数脚本的命令是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11305474/

相关文章:

postgresql - 比较区间 SQL 之间的数组

postgresql - 如何从 Python 获取 PostgreSQL 数据库大小?

postgresql - 有条件地选择要在 FOR 循环中迭代的集合

sql - 使用 CAST 和 SUBSTRING 时如何在 postgresql 中过滤查询结果 (pgAdmin 4)

arrays - Postgres : modify each array element

javascript - JS加入购物车

java - 如何使用 JDBI 将 2d 数组从 PostgreSQL DB 转换为 java 2d 数组?

postgresql - 获取超过一个短名称的类别ID

postgresql - 使用 gnatcoll_db2ada 在与 postgresql 数据库的 Ada 接口(interface)的架构中使用数组类型

macos - Mac OS X Snow Leopard 的默认/etc/sysctl.conf 设置?