 |
建站必读 |
 |
|
|
 |
|
 |
|
| |
| 当前位置:首页 -> 建站必读 -> ASP技术 |
|
用ASP与ADO查询Web数据库 |
ASP和ADO简介
DO中可用VBScript、JavaScript 语言来控制数据库的访问(而ASP恰恰是脚本语言的解释环境)和查询结果的输出;ADO中使用RecordSets对象对数据库进行操作;可以连接多种支持OD BC的数据库。数据查ASP(Active Server Pages)是一个服务器端的(Server-side)脚本执行环境,用户可用它产生和执行动态的、交互的、高性能的Web服务器应用程序。当脚本在服务器端而不是在客户端执行时,Web服务器将完成产生发往浏览器的HTML(Hypertext Markup Langua ge)页的所有工作。图1
图1是ASP的工作模式。当浏览器向Web服务器提出文件(.asp)的请求时,一个ASP脚本就开始执行,这时Web服务器调用ASP,把该文件全部读入并执行每一条命令,然后将结果以HTML页面形式送回浏览器。
ADO(ActiveX Data Object,ActiveX数据对象)是一个ASP内置的A ctiveX服务器组件(ActiveX Server Component),用于数据库访问,可把它与ASP结合起来,建立提供数据库信息的网页内容,对数据库进行查询、插入、更新、删除等操作。
要执行ADO,服务器端须安装Windows NT Server和Internet I nformation Serv er(IIS),而客户端只要有IE或Netscape较新版本的浏览器即可。站点数据库访问的几种方案
实现Web数据库访问大致可分为两类,一类是以Web服务器作为中介,把浏览器和数据源连接起来,在服务器端执行对数据库的操作;另一类是把应用程序和数据库下载到客户端,在客户端执行对数据库的访问。
1. 公共网关接口CGI(Common Gateway Interface)
当浏览器发出HTTP请求时,Web服务器执行相应的应用程序,访问站点数据库,并将查询结果以HTML格式送回到浏览器。这种方式有很多缺点,功能有限、开发困难,且不具备事务处理(Transaction)功能, 这在很大程度上限制了它的应用。
2. Internet数据库连接器IDC(Internet Database Connector)
这是一种简易方案,对数据库的操作仍然放在Web端,但用户可通过SQL(Structured Query Language)语句对数据库进行查询、输入、更新、删除等操作。IDC设计简易,不用编译就可直接执行,且支持对数据的多重查询(Multiple Query)。
3. 先进数据库连接器ADC(Advanced Data Connector)
前两种方案中对数据库的操作都是在服务器端进行,而ADC是在浏览器端执行数据查询动作。当浏览器提出对数据库的操作请求时,ADC 先将相应的数据库下载到浏览器端,在用户端对数据库进行操作。显然,这种方案效率很高。客户端对数据库的查询是由安装在客户端的A DC ActiveX Control完成的,而这个ActiveX Control是由站点服务器自动下载并安装在客户端的。
4. ADO与ASP
这是一种完全的Web数据库访问方案,可把ADO与ASP结合起来,建立提供数据库信息的网页内容,在网页中执行SQL命令,对数据库进行查询、插入、更新、删除等操作。A询实例:港澳证件信息查询
本例要完成的操作是对港澳出入境数据库进行查询,客户可给出一种或几种查询条件,然后按要求显示查询结果。
1. 确定数据源
要访问网上数据库,首先设定数据来源。在服务器上打开"我的电脑"中的"控制面板",双击"ODBC";在"系统DSN"下选"添加",选出预先设好的数据库种类、名称和位置。这里要用到的是FoxPro数据库,数据源名称为GACX,主数据库名称为visa.dbf,编码数据库名称为zd.dbf 。
2. ADO查询数据库的使用
ADO查询数据库的设计方法是先用Server.CreatObject取得对象" ADODB.Connection "的一个实例,并用"Open"打开待访问的数据库:
Set Conn=Server.CreatObject("ADODB.Connection")
Conn.Open "待访问的数据库名称"
然后执行SQL命令,即对数据库进行操作,这里要使用Execute命令 :
Set RS =Conn .Execute( " Select ...From...Where...")下一步就可对数据库进行查询操作,要用到RecordSets对象的如下命令:
* RS.Fildes.Count
RecordSets的字段数
* RS(i).Name
第i个字段名
* RS(i)
第i个字段的记录
* RS("字段名")
指定字段的记录
* RS.EOF
是否指向最后一个字段 True or False
* RS.MoveFirst
指向第一条记录
* RS.MovePrev
指向前一条记录
* RS.MoveNext
指向后一条记录
* RS.MoveLast
指向最后一条记录
* RS.GetRows
将查询结果存放在数组中,然后再从数组中读取
* RS.Properties.Count
得到ADO的Connection或ResultSet的属性总数
* RS.Properties(Item).Name 得到ADO的Connection或ResultSe t的属性名称
* RS.Properties(Item)
得到ADO的Connection或ResultSet的属性值
3. 具体实现
主页面为港澳证件信息查询,对应程序为gacx.asp。查询结果以两种方式显示,n |
| |
|
| |
本站关键词: |
|
|
|
|
 |
|
 |
|