【发布时间】:2015-08-14 09:01:32
【问题描述】:
是否可以在函数中获取当前 OID?喜欢:
CREATE FUNCTION foo()
RETURNS numeric
LANGUAGE plpgsql
AS '
BEGIN
return THIS_FUNCTIONS_OID;
END
';
我需要这个,因为我在不同的模式中创建了函数 foo,所以函数名称在这里没有帮助。
【问题讨论】:
-
我不确定,但是……为什么?你想用这个解决什么问题?
-
最后,我想获取创建函数的模式的名称。我需要这个来在运行时操作
search_path。 -
我认为这不可能。请参阅来自 Postgres 主要贡献者之一的this answer。此后,他添加了support for callstack dumps,它将为您提供函数名称,但不幸的是,它似乎没有任何模式限定。
-
感谢您提供此信息!
标签: postgresql plpgsql