3

我已经设置了一个指向 Oracle DB 的链接服务器。我想在传递参数 K 的包 XYZ 中调用函数 ABC。执行此操作的语法是什么?

4

1 回答 1

11

我使用了以下语法,它对我有用。

EXECUTE (Query, Parameters) AT LinkedServerName

例子:

EXECUTE ( 'BEGIN ? := Package.MyFunction(?,?); END;', @ReturnValue, @InputPara, @OutputPara OUTPUT ) AT LinkedServerName

要点:

  • 调用函数时不要忘记 BEGIN 和 END 语法
  • 不要忘记末尾的分号“END**;**”
  • 要使用上述语法,您需要为链接服务器启用 RPC
  • 除非您接受变量中的输出,否则 Oracle 不会将该调用视为函数调用
于 2009-08-17T07:30:14.627 回答