select top @rscount * from myjobs where job_id not in(select top @rscount*(@curpage-1) job_id from myjobs)
alter proc page@curpage int, --页码
@rscount int, --每页显示记录
@pagecount int output --记录总数
as
declare
--@query varchar(200),
@cnt int
select @cnt=count(job_id) from myjobs
if @cnt%@rscount=0
set @pagecount=@cnt/@rscount
else
set @pagecount=@cnt/@rscount+1
if @curpage<1
set @curpage=1
if @curpage>@pagecount
set @curpage=@pagecount
--set @query='
select top @rscount * from myjobs where job_id not in(select top @rscount*(@curpage-1) job_id from myjobs)
go
请教高手,有错误 --------------------编程问答-------------------- 服务器: 消息 170,级别 15,状态 1,过程 page,行 21
第 21 行: '@rscount' 附近有语法错误。
服务器: 消息 170,级别 15,状态 1,过程 page,行 21
第 21 行: '@rscount' 附近有语法错误。
--------------------编程问答-------------------- 最后一句的top后面如果跟的是一个变量或表达式的话必须加括号括起来,如果是常量整数的话可不加 --------------------编程问答-------------------- 好像是sql server不支持把top n的这个n参数化。拼接sql语句吧
--------------------编程问答--------------------
sql2000的确是不支持,但2005是支持的得加括号
补充:.NET技术 , C#