繁体中文
设为首页
加入收藏
当前位置:数据库技术首页 >> 数据库开发 >> 存储过程中的top+变量(downmoon)

存储过程中的top+变量(downmoon)

2006-04-21 19:49:05  作者:downmoon  来源:互联网  浏览次数:10  文字大小:【】【】【
简介: .lineBorderBlue1 { BORDER-TOP: #999999 1px groove; BORDER-BOTTOM: #999999 1px groove; BORDER-LEFT: #999999 1px groove; BORDER-RIGHT: #999999 1px groove; background-color:#efe...

存储过程中的TOP后跟一个变量会如何?

Create proc getWorkPlan2

@intCounter int

,@lngUserID int

as

select Top 5 lngWorkID,strWorkName,strExecHumanName,strBeginDate

from worklist where lngExecHumanID= @lngUserID

order by lngWorkID desc

现在想将这里的Top 5 改为变量· Top @intCounter

如下

ALTER proc getWorkPlan2

@intCounter int

,@lngUserID int

as  

exec ('select Top '+convert(varchar(10),@intCounter)+' lngWorkID,strWorkName,strExecHumanName,strBeginDate from worklist where lngExecHumanID= '

+convert(varchar(10),@lngUserID) +' order by lngWorkID desc '

老是提示 在关键字 'convert' 附近有语法错误。

于是改为

ALTER proc getWorkPlan2

@intCounter int

,@lngUserID int

as

declare @strCounter varchar(10)

set @strCounter=convert(varchar(10),@intCounter)

declare @strUserID varchar(10)

set @strUserID=convert(varchar(10),@lngUserID)

exec ('select Top '+@strCounter+' lngWorkID,strWorkName,strExecHumanName,strBeginDate from worklist where lngExecHumanID= '

+@strUserID +' order by lngWorkID desc '

)

OK!

 

责任编辑:admin
相关文章