sp_executesql中的SQL Server 2008 OPENQUERY。获取错误语法错误?

时间:2016-06-24 12:12:23

标签: sql-server-2008 openquery

代码:

x10.io.FileReader.lines().hasNext()

我正在尝试从链接服务器功能获取数据。我还需要发送DECLARE @resultLast int, @siparisID nvarchar(21) SET @siparisID = 2487 EXEC sp_executesql N'select * from OPENQUERY([MYSERVER],''Select ( [MYDB].[dbo].[FN_SIPARIS_YUKLEME_TUTARI](@siparisID , 20 , [MYDB].[dbo].[FN_DATE_CONVERT_TO_DATE]( GETDATE()) , ''''BUY''''))'' )', @siparisID, N'@resultLast int output', @resultLast output; 参数。我收到错误的语法错误。请帮忙......

错误:

  

Msg 102,Level 15,State 1,Line 1
  '2487'附近的语法不正确。

1 个答案:

答案 0 :(得分:0)

您已定义@siparisID nvarchar(21) - 但您将其设置为数值数据类型。

所以 将其定义为intdecimal(p,s)等数值数据类型:

DECLARE @siparisID INT
DECLARE @siparisID BIGINT
DECLARE @siparisID DECIMAL(16,2)

将初始化更改为

SET @siparisID = N'2487';