SQL一个带参数的存储过程写法
CREATEPROCEDUREgetnewsASselecttop10*fromyx_newsorderbynews_updateTimeDESCGO上面是一个查询存储过...
CREATE PROCEDURE getnews AS
select top 10 * from yx_news order by news_updateTime DESC
GO
上面是一个查询存储过程没带参数,我想将那个输出10条做为参数,别的程序
调用的时候可以自定义输出条数.
不知道到怎么写.第一次接触不太清楚,希望有大家能帮我下,谢谢
一楼大哥,能不能写清楚点,我没看懂我是新手额,照顾下拉 展开
select top 10 * from yx_news order by news_updateTime DESC
GO
上面是一个查询存储过程没带参数,我想将那个输出10条做为参数,别的程序
调用的时候可以自定义输出条数.
不知道到怎么写.第一次接触不太清楚,希望有大家能帮我下,谢谢
一楼大哥,能不能写清楚点,我没看懂我是新手额,照顾下拉 展开
5个回答
展开全部
这个..呵呵.第一次就提出一个难的..
如果是一般的参数好办些.
CREATE PROC getnews
@num varchar(10)
as
declare @str varchar(200)
set @str='select top '+@num+' from yx_news order by news_update time desc'
exec(@str)
go
如果是一般的参数好办些.
CREATE PROC getnews
@num varchar(10)
as
declare @str varchar(200)
set @str='select top '+@num+' from yx_news order by news_update time desc'
exec(@str)
go
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个不要用返回参数的形式,直接返回记录集就行了,存储过程就象你这样写,不用作任何改动。然后程序里用
<%
...数据库连接
Dim gcSQL : gcSQL = "getnews "
Dim rs : Set rs = conn.execute(gcSQL)
if not rs.eof then
...
else
...
end if
rs.close
%>
<%
...数据库连接
Dim gcSQL : gcSQL = "getnews "
Dim rs : Set rs = conn.execute(gcSQL)
if not rs.eof then
...
else
...
end if
rs.close
%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的这个做法没有意义,一般存储过程主要是针对sql语句执行效率低和数据完整性等来说的,你用这种方法就单单为了查询一个表中的TOP信息,这样与存储过程的有点恰恰相反,因为这个方法实现存储过程中取出你所要的信息,同是也能用同样的方法更简便的从表中取出你要的信息
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
CREATE OR REPLACE PROCEDURE 名字(
DATA IN VARCHAR2
)
IS
v_count NUMBER;
BEGIN
。。。
exception
。。。
end;
DATA IN VARCHAR2
)
IS
v_count NUMBER;
BEGIN
。。。
exception
。。。
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |