首页
会员中心
到顶部
到尾部
计算机

基于ASP技术开发Web数据库检索程序

时间:2020/10/14 13:26:42  作者:  来源:  查看:0  评论:0
内容摘要: 摘 要:文章以ASP技术为基础,介绍了基于ASP技术开发数据库检索程序的产生机理和 方法,并针对Web数据库检索程序特点,采用全文检索数据库方式,来实现基于ASP技术 开发Web数据库检索程序。 http://www.16sheji8.cn/关键词:ASP技术;Web数据...


摘 要:文章以ASP技术为基础,介绍了基于ASP技术开发数据库检索程序的产生机理和
方法,并针对Web数据库检索程序特点,采用全文检索数据库方式,来实现基于ASP技术
开发Web数据库检索程序 http://www.16sheji8.cn/
关键词:ASP技术;Web数据库;检索程序

1 前 言
    1.1 ASP(Active Service Page),是微软推出的动态Web设计技术,是一种用于WWW服务的服务器端脚本环境,在站点的Web服务器上解释脚本,可产生并执行动态、交互式、高效率的站点服务器应用程序。利用它,可以很容易地把HTML标记、文本、脚本命令及ActiveX组件混合在一起构成ASP页,以此来生成动态网页,创建交互式的Web站点,实现对Web数据库的访问。
    1.2 当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript 或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。
   2 ASP技术及访问机理 
    由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器。ASP技术的核心是内置的ActiveX服务器组件和对象。ActiveX服务器组件包括∶数据库访问组件(Database Access component),提供访问服务器数据库的功能;文件访问组件(File Access component),提供读写服务器文件的功能;广告轮播器组件(Ad Rotator component),提供广告轮播器的功能;内容链接组件(Content Linking component),提供管理超级链接、上一页、下一页等链接功能;浏览器信息组件(Browser Capabilities Component),提供有关浏览器信息。内置对象包括∶请求(Request),从前端用户取得信息;响应(Response),将信息送给前端用户;服务器(Server),提供Web服务器工具。应用(Application),管理所有的会话信息,供所有用户共享;会话(Session),储存一次会话内的用户信息,仅被该用户访问;对象上下文(ObjectContext),配合Transaction服务器进行分布式事务处理。 
3 数据库检索程序的开发
    ASP技术是开发网上数据库服务系统的重要手段,利用ASP技术可以进行有效的网上数据库检索系统的开发利用。
3.1 通用检索主页的设计 http://www.16sheji8.cn/
    通用检索主页的设计,实际就是对一个HTML FORM表单进行编码和提交的过程。FORM表单是HTML中能够实现Web页面交互性的重要组成部分,它为Web页面提供了丰富的交互对象,可以方便地完成信息查询条件的录入及数据库、检索途径的选择等。
3.2 数据库接口程序设计
    数据库接口程序设计的关键是通过ActiveX服务器组件ADO及包含的对象,实现对数据源的读写,用户可在浏览器画面中检索、输入、更新和删除数据库信息,从而建立提供数据库信息的主页内容。ADO主要提供了七个对象和四个集合来完成对于数据库的管理,包括:Connection、Command、Parameter、Recordset、Field、Property、Error以及Fields、Properties、Parameters、Errors。 
3.2.1 定义数据源
  在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“SQL SERVER”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采用Jscript。
3.2.2 创建数据库链接(Connection) 
    创建数据库链接(Connection)。通过服务器对象的CreateObject方法,可以创建Connection对象和使用变量接受对象引用。一旦连接对象创建之后,它就可用来打开到任何ODBC数据源的连接。
3.2.3 创建数据对象(Recordset)
   创建数据对象(Recordset)。
 Dim Rs ‘申明变量’
Set Rs=Server.CreatObject("ADODB.Recordset") ‘创建数据对象’
Rs.PageSize=10 ‘设置一页所显示的记录数’
3.2.4 操作数据库 
  (1)首先要定义SQL查询语句:
Dim sql ‘申明变量’
sql="select * from publication where title like ’ASP%%’" ‘定义SQL查询语句’,检索数据库的publication表中名以ASP开头的所有信息的记录。
Const adOpenkeyset=1 ‘定义Recordset的类型’ 
 (2)然后执行该查询命令,Rs.Open Sql,conn, adOpenkeyset ‘执行sql语句’,在数据对象Rs中保存检索结果。
如调用Server.CreateObject方法取得“ADODB.Connection”的实例,再使用Open方法打开数据库:
conn = Server.CreateObject(“ADODB.Connection”)
  conn.Open(“HT”)
  来操作数据库。
 (3)最后指定要执行的SQL命令
  连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有“X”的记录
  sqlStr = “select * from signaltab where code like ‘%X%’”
  rs = conn.Execute(sqlStr)
4 数据库检索代码
    基于ASP技术开发的Web数据库检索程序,是利用数据库检索系统网络结构和开发工具,将多个数据库集成在一个平台上,来实现多数据库的检索,从而提高数据库的检索效率。
以下是一个全文索引的数据库检索部分代码:
Sub Initialize 
Dim ArrNsf As Variant 
Dim item As NotesItem 
’获得文档 context,因为此代理是一个$$QuerySaveAgent,所以$$QuerySaveAgent 
可以访问 Context文档上的项目。
Dim sess As New NotesSession 
Dim doc As NotesDocument 
Set doc = sess.DocumentContext 
’获得欲检索的数据库,存放在数组ArrNsf内: 
ArrNsf= doc.DatabaseName 
’如果没有输入检索条件,则输出提示信息: 
If Trim(Cstr(doc.Query(0)))="" Then  http://www.16sheji8.cn/
Goto EmptyQuery 
End If 
Dim MatchDoc As NotesDocument 
Dim db As NotesDatabase, 
Dim collection As NotesDocumentCollection 
’下列循环从数组ArrNsf中取得欲检索的数据库进行处理: 
For nsfCount=0 To Ubound( ArrNsf ) 
SearchDB=ArrNsf(nsfCount) 
Set db = sess.GetDatabase("",SearchDB) 
’出现错误则转向: 
On Error Goto BadQuery 
’获得满足查询条件的记录集:
Set collection = db.FTSearch(doc.Query(0),0) 
On Error Goto 0 
’输出数据库标题:  
’输出该数据库中满足条件的记录个数: 
There are " & Str$(collection.Count) & " matching 
documents

’下列循环从满足条件的记录集中读取记录并输出: 
For i% = 1 To collection.Count 
Set MatchDoc = collection.GetNthDocument(i%) 


’如果文档包含Subject或Title,则输出Subject或Title: 
Set item =MatchDoc.GetFirstItem( "Subject" ) 
If ( item Is Nothing ) Then 
Set item = MatchDoc.GetFirstItem( "Title" ) 
End If 
If Not (item Is Nothing) Then 
" & item.Name & ": & item.Text 
End If 
’如果文档包含Categories,则输出Categories: 
Set item = MatchDoc.GetFirstItem( "Categories" ) 
If Not (item Is Nothing) Then 
Print item.Name & ": " & item.Text 
End If 
’输出文档产生日期和作者: 
createDate = MatchDoc.Created 
Document create date: &createDate 
Authors: 
Forall aAuthor In MatchDoc.Authors 
Print aAuthor 
End Forall 


Next 
Next 
Out: 

Exit Sub 
EmptyQuery: 
Search query can not be empty 
Resume Out 
BadQuery: 
Query is not understandable: " & doc.Query(0) & {" 
Resume Out 
End Sub 
5 总 结
    5.1 Web服务的应用越来越广,其数据索引也随之有增无减。同时,在编写Web数据库检索代码时,既要考虑其安全性,又要确保应用的高质量,致使及时开发相应的数据库检索程序越来越迫切。  http://www.16sheji8.cn/
    5.2 ASP技术是中小型自主开发网上数据库服务系统工具。本文从Web网上数据库检索系统的设计出发,探讨了如何利用ASP技术进行有效的网上数据库检索系统的开发利用,具有较强的现实意义。

参考文献:
[1] 刘云生.数据库设计与分析[M].武汉:华中理工大学出版社,1993.
[2] 严蔚敏,吴伟民.数据结构[M].北京:清华大学出版社,2001
[3] 郑若忠,宁洪.数据库原理[M].湖南:国防科技大学出版社,1998.
[4] 李大友.数据库原理及应用[M].北京:清华大学出版社,1993.

  


相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号