2009-08-13 5 views

ответ

6

Я использовал следующий синтаксис, и это сработало для меня.

EXECUTE (Query, Parameters) AT LinkedServerName 

Пример:

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

Важные моменты:

  • Не забывайте НАЧАТЬ и синтаксис END при вызове функции
  • Не забудьте точку с запятой в конце " END **; ** "
  • Для использования вышеуказанного синтаксиса вам необходимо включить RPC для связанного сервера
  • Oracle не будет рассматривать вызов как вызов функции, если вы не принимаете выход в переменной
Смежные вопросы