代码如下,我想取top @articlenum的数据,但是程序提示@articlenum错误,不知该如何解决create procedure sp_getSomeArticle
@articlenum int
as
select top @articlenum articleid,title,addtime,author,browsetime from dt_article order by addtime desc
go
@articlenum int
as
select top @articlenum articleid,title,addtime,author,browsetime from dt_article order by addtime desc
go
例如:
create procedure sp_getSomeArticle
@articlenum int
as
declare @sql nvarchar(200)
set @sql = 'select top ' + cast(@articlenum as nvarchar) + ' From Mytable'
sp_executesql @sql
go
select top
top 后得加数字 如select top 5
不过楼上的少了个exec呵呵。
create proc sp_Test
@topnum int,@id int
--假设需要检索id<@id的记录
as
declare @sql nvarchar(1000)
set @sql = 'select top ' + cast(@topnum as nvarchar) + ' From Tablexx where id<@SPid'
exec sp_executesql @sql,N'@SPid int',@SPid=@id
另外楼主的写法sqlserver2005支持。
@articlenum int
as
declare @sql nvarchar(200)
set @sql = 'select top ' + cast(@articlenum as nvarchar“此处是否应该改为int??”) + ' From Mytable'
sp_executesql @sql
go向 @articlenum添加数值也和平常一样吧??