存储过程参数如何使用

存储过程参数怎么使用--分页create proc sel_fen@tablename varchar(20),--表名@pk varchar(20),--主键@pa

存储过程参数怎么使用
--分页
create proc sel_fen
@tablename varchar(20),--表名
@pk varchar(20),--主键
@pagesize int=10,--每页多少条数据
@pagenumber int=1--当前页
as
  begin
select top (@pagesize) * from @tablename where @pk not in ( select top ((@pagenumber-1)*@pagesize) @pk from prc_sp)
  end


谁能帮我看看为什么老是说我变量未申明?

[解决办法]

SQL code
EXEC('select top ('+@pagesize+') * from '+@tablename+' where '+@pk+' not in ( select top (('+@pagenumber-1+')*'+@pagesize+') '+@pk+' from prc_sp)')
[解决办法]
要用动态语句