Createproc getWorkPlan2 (@intCounterint ,@lngUserIDint) as selectTop5 lngWorkID,strWorkName,strExecHumanName,strBeginDate from worklist where lngExecHumanID=@lngUserID orderby lngWorkID desc
现在想将这里的Top 5 改为变量· Top @intCounter 如下
ALTERproc getWorkPlan2 (@intCounterint ,@lngUserIDint) as ) execsp_executesql('select Top '+convert(varchar(10),@intCounter)+' lngWorkID,strWorkName,strExecHumanName,strBeginDate from worklist where lngExecHumanID= ' +convert(varchar(10),@lngUserID) +' order by lngWorkID desc '
老是提示 在关键字 'convert' 附近有语法错误。
于是改为
ALTERproc getWorkPlan2 (@intCounterint ,@lngUserIDint) as declare@strCountervarchar(10) set@strCounter=convert(varchar(10),@intCounter) declare@strUserIDvarchar(10) set@strUserID=convert(varchar(10),@lngUserID) ) execsp_executesql('select Top '+@strCounter+' lngWorkID,strWorkName,strExecHumanName,strBeginDate from worklist where lngExecHumanID= ' +@strUserID+' order by lngWorkID desc ' )