0

问题示例:

  • 架构名称 -schema123
  • 函数名 =function123

找不到 ->variable:=function123(); 可以找到 ->variable:=schema123.function123()

使用 PostgreSQL 8.4

4

1 回答 1

1

尝试:

SET search_path='public, schema123';

然后运行你的函数。

更好的方法是使用具有模式名称的完全限定函数名称,如第二个示例中所示。这远不那么容易出错。

请注意,除非您在搜索路径函数中有架构,否则将找不到它。在 Pg 8.4 中,您必须在存储过程中具有复杂的逻辑才能设置和恢复搜索。在 9.2 中,您实际上可以为该功能设置此项,这可能是考虑升级的一个很好的理由。

于 2013-03-10T14:08:12.100 回答