SQL sp_executesql 内的 Server 2008 OPENQUERY。获取错误不正确的语法?
SQL Server 2008 OPENQUERY inside sp_executesql. Getting error incorrect syntax?
代码:
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;
我正在尝试从链接服务器函数中获取数据。我还需要发送 @siparisID
参数。我收到不正确的语法错误。请帮忙...
错误:
Msg 102, Level 15, State 1, Line 1
Incorrect syntax near '2487'.
您已定义 @siparisID nvarchar(21)
- 但您将其设置为数字数据类型。
所以或者将其定义为数字数据类型,如int
或decimal(p,s)
:
DECLARE @siparisID INT
DECLARE @siparisID BIGINT
DECLARE @siparisID DECIMAL(16,2)
否则将初始化更改为
SET @siparisID = N'2487';
代码:
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;
我正在尝试从链接服务器函数中获取数据。我还需要发送 @siparisID
参数。我收到不正确的语法错误。请帮忙...
错误:
Msg 102, Level 15, State 1, Line 1
Incorrect syntax near '2487'.
您已定义 @siparisID nvarchar(21)
- 但您将其设置为数字数据类型。
所以或者将其定义为数字数据类型,如int
或decimal(p,s)
:
DECLARE @siparisID INT
DECLARE @siparisID BIGINT
DECLARE @siparisID DECIMAL(16,2)
否则将初始化更改为
SET @siparisID = N'2487';