Go homepage(回首页) Upload pictures (上传图片) Write articles (发文字帖)
All articles(文章集合)All Picture(图片集合)All Video(视频集合)
The author:(作者)归海一刀published in(发表于) 2014/2/1 0:20:40 存储过程中的top+变量_[SQL,Server教程]
存储过程中的TOP后跟一个变量会如何? Create proc getWorkPlan2@intCounter int,@lngUserID int
as select Top 5 lngWorkID,strWorkName,strExecHumanName,strBeginDate from worklist where lngExecHumanID= @lngUserIDorder by lngWorkID desc 现在想将这里的Top 5 改为变量· Top @intCounter 如下
ALTER proc getWorkPlan2@intCounter int,@lngUserID intas 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!