解读ASP+SQL的存储过程简单入门(2)_ASP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:解析Asp中日期格式化问题
对于access数据库的日期时间类型字段存储的日期,直接从数据库中读出显示的效果是带时间的如,2009-06-1318:00,如果只是希望显示日期应该怎么办呢? Vbscrip有一个函数FormatDateTime()。其说明如下: 返回表达式,此表达式已被格式化为日期或时间。 For


下面用ASP来调用它: 
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"的记录 
数据库里只有一条这样的记录,所以会显示: 

到这里,恭喜你已经入门了!不难吧。

分享:如何使ASP实现搜索关键字高亮
用ASP实现搜索引擎的功能是一件很方便的事,可是,如何实现类似3721的智能搜索呢?比如,当在搜索条件框内输入“中国人民”时,自动从中提

共2页上一页12下一页
来源:模板无忧//所属分类:ASP教程/更新时间:2010-02-04
相关ASP教程