当前位置: 代码迷 >> Sql Server >> 请帮忙见见这句存储过程错在哪里
  详细解决方案

请帮忙见见这句存储过程错在哪里

热度:90   发布时间:2016-04-27 10:56:17.0
请帮忙看看这句存储过程错在哪里?
想做一个分页的存储过程,只是个简单的实例,为的是学习下存储过程的编写,存储过程代码如下:
SQL code
ALTER proc [dbo].[GetPageData1]@pageIndex int=1, --页码@pageSize int=10, --页容量@tblName varchar(100), --表名@keyName varchar(100),--主键名@where varchar(500), --查询条件@rowCount int output --返回总行数asbegin    declare @sqlStr varchar(1000)    set @sqlStr = 'select @rowCount = count([email protected]+') from [[email protected]+']'    exec(@sqlStr)end


运行这段存储过程时提示如下错误:

消息 137,级别 15,状态 1,第 1 行
必须声明标量变量 "@rowCount"。

请问错在哪里?应该如何写才对?

------解决方案--------------------
SQL code
ALTER proc [dbo].[GetPageData1]  @pageIndex int=1, --页码  @pageSize int=10, --页容量  @tblName varchar(100), --表名  @keyName varchar(100),--主键名  @where varchar(500), --查询条件  @rowCount int output --返回总行数    as  begin      declare @sqlStr varchar(1000)        set @sqlStr = 'select '+convert(varchar(10),@rowCount)+' = count([email protected]+') from [[email protected]+']'      --PRINT @sqlStr  可以通过print来查看,先不用exec      exec(@sqlStr)    end
  相关解决方案