比如一个存储过程:
create proc sp_ShowInfoList
@TopNum int --显示最新的多少条记录
as
select top @TopNum * from info order by id desc
GO 上面代码中,SQL server 说@TopNum 处有错误,现在的问题是能不能用参数控制显示最新多少条(@TopNum),不知在存储过程中能不实现,如果能,又如何实现呢?
create proc sp_ShowInfoList
@TopNum int --显示最新的多少条记录
as
select top @TopNum * from info order by id desc
GO 上面代码中,SQL server 说@TopNum 处有错误,现在的问题是能不能用参数控制显示最新多少条(@TopNum),不知在存储过程中能不实现,如果能,又如何实现呢?
解决方案 »
- asp.net页面显示数据,是否必须用数据控件
- 请教浏览器是怎么知道被访问的网址的相关网址的!
- .net js
- C# 中的数组如何绑定到Javascript的数组里,或者在Javacript引用C#的数组.
- Hashtable,ASP.NET初学者
- 在哪里可以下载到IEWebControls.exe?可否帮忙把文件发送到我的邮箱...
- [求助] Server Application Unavailable
- 组建一个团队开发一套类似支付宝的某行业类的第三方支付平台 大概需要多少预算,也就是以说给客户报多少价钱合适???
- 一个小问题,各位大侠们给些指示。。。
- 怎么将Unit类型转换成int类型?
- 请教一下,如何实现在页面的焦点发生变化的时候发生事件?
- 请高手指点迷津
declare @@int int
set @@int=5
declare @@cSQL varchar(1000)
set @@cSQL='select top '+convert(varchar,@@int)+' * from tFunction'
--print(@@cSQL)
execute(@@cSQL)
@TopNum int --显示最新的多少条记录
as
select top @TopNum * from info order by id desc
GOdeclare @cSQL varchar(1000)
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction'
execute(@cSQL)
没必要定义@@
create proc sp_ShowInfoList
@TopNum int --显示最新的多少条记录
asdeclare @cSQL varchar(1000)
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction'
exec(@cSQL)
go
create proc sp_ShowInfoList
@classid int --分类号
@TopNum int --显示最新的多少条记录
asdeclare @cSQL varchar(1000)
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction
where classid=@classid'
exec(@cSQL)
go编译时系统提示:
必须声明变量 '@classid'经检查,程序代码均正常,问题出在存储过程里面,不知道是怎么回事!!!
create proc sp_ShowInfoList
@classid int, --分类号
@TopNum int --显示最新的多少条记录
as
declare @cSQL varchar(1000)
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction
where classid=@classid'
exec(@cSQL)
go
编译时系统提示:
必须声明变量 '@classid'
经检查,程序代码均正常,问题出在存储过程里面,不知道是怎么回事!!!
@classid int, --分类号
@TopNum int --显示最新的多少条记录
as
declare @cSQL varchar(1000)
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction
where classid=@classid'
exec(@cSQL)
go 检查你的sql没问题啊我写的时候一般是这么写的:
declare @cSQL varchar(1000)
top '+convert(varchar,@TopNum)+' * from tFunction
set @cSQL=1
这样写行不? wy121420979() ( ) 信誉:100 2006-07-30 22:40:00 得分: 0
怎么没人跟了,跟了就给分!!!
你可是这么说的,不马上给分就不是人
create proc sp_ShowInfoList
@classid int, --分类号
@TopNum int --显示最新的多少条记录
as
declare @cSQL varchar(1000)
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction
where classid=@classid'
exec(@cSQL)
go
编译时系统提示:
必须声明变量 '@classid'
----------------------------------------------------------
你就不会变通一下跟前面那个@topnum那样写了吗,真是急死人,这样改啊
set @cSQL='select top '+convert(varchar,@TopNum)+' * from tFunction
where classid='+convert(varchar,@classid)
set @cSQL='select top '+convert(varchar(10),@TopNum)+' * from tFunction where classid=' + Convert(VarChar(10),@classid)