执行动态创建的查询时出错

没有

我的StoredProcedure就是这样

    USE [Workcamps]
GO
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER   PROCEDURE  [dbo].[ph_TshirtReport]

    @CampCode nvarchar(20) = NULL,
    @strAddtlCriteria VARCHAR(150) = ''
AS

    DECLARE @strSQL VARCHAR(900)

    SET @strSQL = 'select distinct [VolID]  ,[VolFName]  FROM [vTShirtBase] WHERE @CampCode IS NULL OR CampCode=@CampCode'

    IF Len(@strAddtlCriteria) > 0
        SET @strSQL = @strSQL + ' and ' + @strAddtlCriteria

    exec (@strSQL)

我这样执行它

    USE [Workcamps]
GO

DECLARE @return_value int

EXEC    @return_value = [dbo].[ph_TshirtReport]
        @CampCode = N'14CA11',
        @strAddtlCriteria = N'GroupStaff = 0 And TSWithGS = 0 And StaffAtTraining = 0 And MinJobType <> S And Setup = 0'

SELECT  'Return Value' = @return_value

GO

一切对我来说都还好。但这会引发错误

    Msg 137, Level 15, State 2, Line 1
Must declare the scalar variable "@CampCode".

我不知道为什么会这样,有人可以指出我做错了什么吗?

耶纳德拉

您需要更改SET @strSQL代码。设置如下:

SET @strSQL = 'select distinct [VolID]  ,[VolFName]  FROM [vTShirtBase] WHERE ' + @CampCode + ' IS NULL OR CampCode=' + @CampCode

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Oracle中执行动态SQL查询

来自分类Dev

在另一个查询中执行动态查询

来自分类Dev

如何在MySQL中执行动态UNION查询?

来自分类Dev

执行动态加载的JavaScript

来自分类Dev

创建动态pthread_t时出错

来自分类Dev

使用postgresql-simple执行动态查询

来自分类Dev

执行插入查询时出错

来自分类Dev

在Eclipse中执行SQL查询时出错

来自分类Dev

动态查询创建和执行PostgreSQL

来自分类Dev

执行动态交叉表查询

来自分类Dev

如何在流查询中执行动态SQL?

来自分类Dev

开始尝试和执行动态简单查询错误

来自分类Dev

执行动态脚本后执行代码

来自分类Dev

执行以下Oracle查询时出错

来自分类Dev

安全地执行动态SQL查询

来自分类Dev

执行mongodb嵌套查询时出错

来自分类Dev

执行查询时出错

来自分类Dev

使用datetime变量执行动态SQL查询时出错

来自分类Dev

执行动态加载的JavaScript

来自分类Dev

执行动态SQL查询

来自分类Dev

执行动态SQL

来自分类Dev

执行插入查询时出错

来自分类Dev

动态查询创建和执行PostgreSQL

来自分类Dev

执行动态请求验证

来自分类Dev

在 OrientDB 上执行 gremlin 查询时出错

来自分类Dev

ORA-00923 执行查询时出错

来自分类Dev

在 Angular 中创建动态 FormControl 时出错

来自分类Dev

删除动态创建的图片框时出错

来自分类Dev

在 IBM DB2 中的存储过程中执行动态选择查询时出错