首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

调用存储过程出错解决方案

2013-01-25 
调用存储过程出错--Drop PROCEDURE [dbo].[FenYe] CREATE PROCEDURE [dbo].[FenYe]@curPage INT , --当前

调用存储过程出错


--Drop PROCEDURE [dbo].[FenYe] 
CREATE PROCEDURE [dbo].[FenYe]
    @curPage INT , --当前页数 
    @pageSize INT , -- 每页显示的数量 
    @th VARCHAR(200) = '' ,    --查询,图号 
    @mc VARCHAR(200) = '' ,    --查询,名称 
    @tm VARCHAR(200) = '' ,    --查询,条码 
    @gysdm VARCHAR(200) = ''    --查询,供应商代码     
AS 
    BEGIN
   
        DECLARE @before INT ,
            @sql NVARCHAR(1000) 
   
        SET @before = ( @curpage - 1 ) * @pageSize 
        SET @sql = 'select top ' + CAST(@pageSize AS VARCHAR(10))
            + ' th,bh,mc,wlbh,tx,dw,nx,xfdw_dm,xfdw_mc,no_bh,rq,bz,glry,bgy From tm_wlbh 
where id not in (Select top ' + CAST(@before AS VARCHAR(10))
            + ' id from tm_wlbh  where (th like ''%''+'+@th+'+''%'' or bh like ''%''+'+@th+'+''%'') and mc like ''%''+'+@mc+'+''%'' and wlbh like ''%''+'+@tm+'+''%'' and xfdw_dm like ''%''+'+@gysdm+'+''%'' order by id)'
        EXEC  (@sql) 
   
    END
   
调用 exec FenYe 1,30,'','','','' 或者  exec FenYe 1,30 可以查到数据,

但是给@th赋值的时候

exec FenYe 1,30,'a','','',''

提示:列名 'a' 无效。

希望指点一下错误,谢谢。
存储 sql
[解决办法]
--Drop PROCEDURE [dbo].[FenYe] 
ALTER  PROCEDURE [dbo].[FenYe]
    @curPage INT , --当前页数 
    @pageSize INT , -- 每页显示的数量 
    @th VARCHAR(200) = '' ,    --查询,图号 
    @mc VARCHAR(200) = '' ,    --查询,名称 
    @tm VARCHAR(200) = '' ,    --查询,条码 
    @gysdm VARCHAR(200) = ''    --查询,供应商代码     
AS 
    BEGIN
    
        DECLARE @before INT ,
            @sql NVARCHAR(1000) 
    
        SET @before = ( @curpage - 1 ) * @pageSize 
        SET @sql = 'select top ' + CAST(@pageSize AS VARCHAR(10))


            + ' th,bh,mc,wlbh,tx,dw,nx,xfdw_dm,xfdw_mc,no_bh,rq,bz,glry,bgy From tm_wlbh 
where id not in (Select top ' + CAST(@before AS VARCHAR(10))
            + ' id from tm_wlbh  where (th like ''%''+''' + @th
            + '''+''%'' or bh like ''%''+''' + @th
            + '''+''%'') and mc like ''%''+''' + @mc
            + '''+''%'' and wlbh like ''%''+''' + @tm
            + '''+''%'' and xfdw_dm like ''%''+''' + @gysdm
            + '''+''%'' order by id)'
        EXEC    (@sql) 
    
    END

 

热点排行