电脑爱好者,提供IT资讯信息及各类编程知识文章介绍,欢迎大家来本站学习电脑知识。 最近更新 | 联系我们 RSS订阅本站最新文章
电脑爱好者
站内搜索: 
当前位置:首页>> SQLServer>>SQL存储过程调用方法及事例代码(asp):

SQL存储过程调用方法及事例代码(asp)

来源:shuntianpeng | 2008-8-28 | (有3379人读过)

CONN文件(连接数据库)如下:

<%
set db=server.createobject("adodb.connection")
db.Open ("driver={SQL Server};server=192.168.18.254;uid=sa;pwd=;database=it;")
%>

192.168.18.254为SQL SERVER服务器的IP地址,uid pwd it 分别为连接数据库的用户和密码及所要连的数据库

新建一个index.asp文件,内容如下:

<!--#include file="conn.asp" -->
<%
set rs=server.createobject("adodb.recordset")
sql = "exec upGetUserName"
rs.open sql,db,3,2

response.write rs.recordcount&"<br>"
while not rs.eof
    response.write rs("uname")&"<br>"
    rs.movenext
wend
response.End
%>

在浏览器中执行这个页面如果显示如下:

那么恭喜你,成功了!
上面是不带参数的存储过程调用,但我们在使用中一定会有参数的,下面就来介绍一个有参数的。
还是上边的例子,我们把原来的存储过程改成这样:

CREATE PROC upGetUserName
@intUserId        NVARCHAR(50),
@intUserpass        NVARCHAR(50)    
AS
BEGIN
        SELECT uname FROM users WHERE uId=@intUserId and pass=@intUserpass

END
GO

可以把原来的存储过程删除,然后把这个写在查询分析器里来执行,也可以直接在原来的存储过程里改。
@intUserId NVARCHAR(50),
@intUserpass NVARCHAR(50)
是要传送进来的参数,@是必须的,因为有两个,所以之间用“,”来分隔
index文件改成如下:

<!--#include file="conn.asp" -->
<%
set rs=server.createobject("adodb.recordset")
sql = "exec upGetUserName 'snake','snake'"
rs.open sql,db,3,2

response.write rs.recordcount&"<br>"
while not rs.eof
    response.write rs("uname")&"<br>"
    rs.movenext
wend
response.End
%>

注意:sql = "exec upGetUserName 'snake','snake'"
两个snake不是一个意思,一个是uid,一个是pass,存储过程返回的是uid="snake"并且pass="snake"的记录
数据库里只有一条这样的记录,所以会显示:

OK,你已经入门了!就这么简单!

原文地址:http://www.blueidea.com/tech/program/2006/3972.asp

喜欢学习的朋友,可以点击过去看下。(cncfan.com 编辑整理)

SQLServer热门文章排行
网站赞助商
购买此位置

 

关于我们 | 网站地图 | 文档一览 | 友情链接| 联系我们

Copyright © 2003-2024 电脑爱好者 版权所有 备案号:鲁ICP备09059398号