执行查询字符串时出错

时间:2017-10-19 08:22:29

标签: sql-server

以下查询会出现如下错误:

  

列名称无效' S'

但此处'S'是参数@P_APPLICABLE_TO的值。不是专栏。

@P_APPLICABLE_TO VARCHAR(20)='',

SET @QUERY = 'SELECT FSWH.ID AS ID,FSWH.REF_NO AS REFNO,FSWH.SALE AS STATUS FROM [ACCT].[SALE_HD] FSWH WHERE COMPANY_ID =' 
                        + Cast(@P_COMPANY_ID AS NVARCHAR(max)) + 'AND SALE =' + Cast(@P_APPLICABLE_TO AS NVARCHAR(max)); 

1 个答案:

答案 0 :(得分:1)

您需要确保它包含在单引号中:

'AND SALE =' + '''' + Cast(@P_APPLICABLE_TO AS NVARCHAR(max)) + ''''; 

使用' PRINT @ QUERY'要查看查询的设置,可以很容易地看出问题所在。