执行过程时出现错误“'-'附近的语法不正确。

时间:2019-12-04 09:11:16

标签: sql-server

在执行以下所示的过程时,出现此错误:

  

第15级州立1行11的消息102
  '-'

附近的语法不正确

我正在尝试使用OPENQUERY执行一个过程。我希望运行此过程时不会出现现在出现的错误消息102。

ALTER PROCEDURE [PlexSprocs].[PUR_xPCN_Supply_Inv_Valuation_DTL_VEI_00]  
    (@PCN INT = -1,
     @PCN_Group VARCHAR(100) = '',
     @Item_No VARCHAR(25) = '',
     @Description  VARCHAR(800) = '',
     @Location VARCHAR(50) = '',
     @Building_Key INT = -1,
     @Item_Group_Key INT = - 1,
     @Consignment INT = -1,
     @Vender_Managed INT = -1,
     @Item_Type_Key INT = -1)
AS
BEGIN
    SET NOCOUNT ON;

    DECLARE @SQL NVARCHAR(MAX),
            @Sproc VARCHAR(MAX),
            @Seperator VARCHAR(10),
            @FullCommand VARCHAR(MAX),
            @Parameter_List VARCHAR(MAX)

    SET @Seperator = ''','''
    SET @Parameter_List = CONCAT('''', @PCN,'''')
                + ',' + CONCAT('''', @PCN_Group,'''')    
                + ',' + CONCAT('''', @Item_No,'''')
                + ',' + CONCAT('''', @Description,'''')
                + ',' + CONCAT('''', @Location,'''')
                + ',' + CONCAT('''', @Building_Key,'''')
                + ',' + CONCAT('''', @Item_Group_Key,'''')
                + ',' + CONCAT('''', @Consignment,'''')
                + ',' + CONCAT('''', @Vender_Managed,'''')
                + ',' + CONCAT('''', @Item_Type_Key,'''')
    -- SET @FullCommand = @Sproc + @Parameter_List
    SET @SQL = N'
          SELECT
            Q.*
          FROM OPENQUERY
          (
            POLODBC,
            ''
            exec sproc79870_11901675_1328255
                            '''''+@Parameter_List+'''''
        '') AS Q
        '
    EXEC sp_executesql @SQL
END

0 个答案:

没有答案