我正在尝试通过DB LINK从SQL Server 2008 R8执行Oracle存储过程,存储过程的头部如下:
PROCEDURE TEST(X OUT NOCOPY VARCHAR2, Y OUT NOCOPY NUMBER, Z IN NUMBER)
这个存储过程应该会更新一个名为“MYTABLE”的表并返回结果。
我的T-SQL代码如下:
DECLARE @X nvarchar(255)
DECLARE @Y INTEGER
DECLARE @Z INTEGER
SET @X= ''
SET @Y = 0
SET @Z = 2
EXEC('begin USER.PKG.TEST(?,?,?); end;',@X OUTPUT, @Y OUTPUT,@Z ) AT DB_ORACLE;
由于我看到表“MYTABLE”被更新,因此执行了存储过程,但问题是我收到了一个错误:
Msg 7215, Niveau 17, État 1, Ligne 10
Impossible d'exécuter l'instruction sur le serveur distant 'DB_ORACLE'.
That translate in
Cannot execute the instruction at the distant server 'DB_ORACLE'
注意:Rpc、Rpc Out 和 Use Remote Collation 的参数已启用。
感谢您的帮助。