错误:无法在远程服务器上执行语句

时间:2017-11-16 21:18:15

标签: sql-server oracle parameters output exec

我使用类似的语法收到错误。使用numeric可行,但varchar不适用:

没关系:

DECLARE @DATA1 NUMERIC(3) 
SET @DATA1 = 0 

EXECUTE ('BEGIN PPC.PRUEBA (?); END;', @DATA1 OUTPUT) AT [GETESTING]
SELECT @DATA1

但是这段代码:

DECLARE @DATA2 varchar(50) SET @DATA2 = '' EXECUTE ('BEGIN PPC.PRUEBA_CHAR (?); END;',@DATA2 OUTPUT) AT GETESTING SELECT @DATA2

抛出此错误:

  

Msg 7215,Level 17,State 1,Line 9
  无法在远程服务器'GETESTING'上执行语句。

1 个答案:

答案 0 :(得分:0)

在使用一对类似的Windows服务器和Windows 10桌面进行大量测试后,我发现问题的根源是Oracle Drive的版本。 我们运行Oracle 11,直到现在我们为Sql-Plus或Toad安装了11个驱动程序。 但是使用这个新的Windows Server 2012和更新的Sql-Server 2016,SSMS 17.3看起来像旧的Oracle客户端有这样的问题报告的问题。 在安装Oracle驱动程序之后,我们在服务器中执行过程调用工作,它开始工作,它以前没有。甚至来自带有SSMS的Window 10。 谢谢

相关问题