欢迎光临
我们一直在努力

利用ASP技术开发基于WWW的数据库检索程序-ASP教程,数据库相关

建站超值云服务器,限时71元/月

 asp是微软公司推出的用以取代cgi的新技术,是目前公认的建立windows nt动态站点最好的工具。它与ado(active data object,一种新的数据访问模型)的充分结合,提供了强大的数据库访问功能,使之成为进行网上数据库管理的重要手段。

    一、asp简介  

asp内含于internet information server(简称iis3.0)中,扩展名以.asp表示。asp文件可以用常规的文本编辑器编辑,也可以利用专门的辅助开发工具interdev进行开发设计,interdev的优点是将整个web程序设计(包括网页设计、asp程序设计、数据库管理等)融为一体,比较适合于较大工程项目的开发研制。asp使用vbscript、javascript等脚本语言作为开发工具,镶嵌于html文本中,使用“<%…%>”将asp的程序包含起来。当用户从浏览器向web服务器提出请求时,web服务器会自动将asp的程序解释为标准的html格式的主页内容,用户端只要使用常规可执行html程序的浏览器,就可浏览asp所设计的主页内容,因此与浏览器无关,并且保证了asp的源程序代码不会外漏。

    asp中包括五个内置的activex服务器组件和五个内置的对象:database access component(数据库访问组件)、file access component(文件访问组件)、ad rotator component(广告轮播器组件)、content linking component(内容链接组件)、browser capabilities component(浏览器信组件)以及request(请求对象)、server(服务器对象)、session(会话对象)、response(响应对象)、application(应用程序对象)。在所有asp组件中,最有用的是数据库访问组件,也称为activex数据对象或ado。在站点发布数据库将使用这个组件及其中包含的对象,以完成对odbc数据源的读写。

     此外,asp技术的另一个重要特点是,程序员可以利用java、visual basic、 visual c++等语言制作适应自己特殊需要的activex服务器组件来扩充asp的功能,使自己的动态网页几乎具有无限的扩充能力,这是传统的cgi程序所不及的。

    二、与ado结合开发基于www的数据库检索程序  

asp技术与ado技术相结合,可以实现基于www的数据库管理功能,用户可在浏览器画面中检索、输入、更新和删除数据库信息,从而建立提供数据库信息的主页内容。ado主要提供了七个对象和四个集合来完成对于数据库的管理,包括:connection、command、parameter、recordset、field、property、error以及fields、properties、parameters、errors。connection对象用来建立与数据库的连接,command对象完成对数据库的操作,recordset对象可以查看或操作数据库中返回的数据。而field 对象和fields集合允许对当前记录的每一个字段进行操作,parameter 对象和parameters集合为command对象提供信息和数据,property 对象和properties集合为connection、command、 recordset、field对象的特性提供信息,error对象和errors集合在错误发生时提供错误信息。  

下面介绍开发数据库检索程序的基本设计方法:

⒈创建数据库源名(dsn)。dsn是通过odbc创建,由odbc使用和识别的、用以连接应用程序和后台数据库的数据库逻辑名。具体创建odbc数据源的方法可参阅有关资料,这里不再介绍。假定已为一个sql server数据库创建了取名为“book”的 odbc数据源。

⒉创建数据库链接(connection)。通过服务器对象的createobject方法,可以创建connection对象和使用变量接受对象引用。一旦连接对象创建之后,它就可用来打开到任何odbc数据源的连接。如下∶

dim conn  ‘申明变量

set conn=server.creatobject(“adodb.connection”)  ‘创建链接对象

conn.open “book”,iusr_tsg01, “”   ‘打开到odbc的链接,其中iusr_tsg01为授权的用户id号,用户口令未加设置。程序员应根据自己的情况进行更替。

⒊创建数据对象(recordset)。recordset 是ado中比较复杂的对象,有许多的属性和方法,包括:eof(文件尾)、bof(文件头)、absolutepage(绝对页)、recordcount(记录计数) 、pagecount(页计数)等属性以及movefirst(移到第一条记录) 、movelast(移到最后一条记录) 、 movenext(移到下一条记录) 、 moveprevious(移到上一条记录)等常用方法。数据对象与asp的session对象结合,还可以实现检索结果的分页处理。

dim rs  ‘申明变量

set rs=server.creatobject(“adodb.recordset”)   ‘创建数据对象

rs.pagesize=10  ‘设置一页所显示的记录数

⒋操作数据库。ado通过执行标准的sql语句实现检索功能,因此首先要定义sql查询语句,然后执行该查询命令,最终形成一个检索结果集合。

dim sql    ‘申明变量

sql=”select * from publication  where title like asp%%”  ‘定义sql查询语句,检索数据库的publication表中书名以asp开头的所有图书的记录

const  adopenkeyset=1  ‘定义recordset的类型

rs.open sql,conn, adopenkeyset   ‘执行sql语句,在数据对象rs中保存检索结果。

⒌在asp中引用返回结果。假如准备在浏览器上显示检中的图书信息,可以采用以下两种方法:

<% response.write(rs.(“title”))%>或

<%=rs(“title”)%>   

⒍关闭数据库对象和链接对象。在程序结束前一定要关闭ado对象,释放服务器资源。如下:

     rs.close

     conn.close

     set rs=nothing

     set conn=nothing

下面是一个极其简单的检索程序,希望能够帮助大家理解一些概念。

example.asp

<html>

<head>

<title>asp数据库检索实例</title>

</head>

<%

dim conn

set conn = server.createobject(“adodb.connection”)

conn.open “book”

sql= “select * from publication where title like asp%%”

dim rs

set rs=server.createobject(“adodb.recordset”)

const adopenkeyset=1

rs.open sql,conn, adopenkeyset

%>

<strong>检索词命中率:<%=rs.recordcount%><br><br>

<select size=8>

<%

do while not rs.eof

%>

<option><% =rs(“title”)%></option>

<%

rs.movenext

loop

%>

</select>

<%

rs.close

conn.close

set rs=nothing

set conn=nothing

%>

</body>

</html>         

本人利用asp技术开发了烟台大学图书馆网上书目检索程序,实践证明该方法简单、、实用、高效,是很值得学习的一种方法。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 利用ASP技术开发基于WWW的数据库检索程序-ASP教程,数据库相关
分享到: 更多 (0)