资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
1ASP 技术访问 WEB 数据库一. 访问 WEB 数据库的多种方案目前在 WINDOWS 环境下有多种访问 WEB 数据库的技术,主要有:1.公共网关接口 CGI(Common Gateway Interface)CGI 是较早实现的技术。适用于多种服务器平台,如 UNIX、WINDOWS 等,但 CGI 的开发成本高、维护困难、功能有限、不具备事务处理功能、占用服务器资源较多。2. INTERNET 数据库连接器 IDC(Internet Database Connector)IDC 集成在 ISAPI(Internet Server API)中,充分利用了 DLL 技术,易扩充,但编程较 CGI 更为复杂,只适用于小型数据库系统。3. 先进数据库连接器 ADC(Advance Database Connector)ADC 提供了 ActiveX Control 来访问数据库,它的主要特点是数据查询由用户端浏览器执行,因而需将服务器端数据库中的部分记录下载到用户端,系统开销较大、响应慢,只适用于特别频繁的数据库查询操作。4. JAVA/JDBC 语言编程JAVA 语言是一种面向对象、易移植、多线程控制的语言,可通过 JDBC 去连接数据库。用 JAVA/JDBC 编写的软件可移植性强,适用于多种操作系统,但其执行效率和执行速度还不理想,目前无法建立高效、高速的应用。25. 动态服务器页面 ASP(Active Server Page)ASP 是微软公司最新推出的 WEB 应用开发技术,着重于处理动态网页和WEB 数据库的开发,编程灵活、简洁,具有较高的性能,是目前访问 WEB 数据库的最佳选择。二. ASP 简介1.ASP 访问数据库的原理ASP 是服务器端的脚本执行环境,可用来产生和执行动态的高性能的 WEB服务器程序。 当用户使用浏览器请求 ASP 主页时,WEB 服务器响应,调用 ASP 引擎来执行 ASP 文件,并解释其中的脚本语言(JScript 或 VBScript),通过 ODBC 连接数据库,由数据库访问组件 ADO(ActiveX Data Objects)完成数据库操作,最后 ASP 生成包含有数据查询结果的 HTML 主页返回用户端显示。由于 ASP 在服务器端运行,运行结果以 HTML 主页形式返回用户浏览器,因而 ASP 源程序不会泄密,增加了系统的安全保密性。此外,ASP 是面向对象的脚本环境,用户可自行增加 ActiveX 组件来扩充其功能,拓展应用范围。2.ASP 页面的结构:ASP 的程序代码简单、通用,文件名由.asp 结尾,ASP 文件通常由四部分构成:31) 标准的 HTML 标记:所有的 HTML 标记均可使用。2) ASP 语法命令:位于% % 标签内的 ASP 代码。3) 服务器端的 include 语句:可用#include 语句调入其它 ASP 代码,增强了编程的灵活性。4) 脚本语言:ASP 自带 JScript 和 VBScript 两种脚本语言,增加了 ASP 的编程功能,用户也可安装其它脚本语言,如 Perl、Rexx 等。3.ASP 的运行环境目前 ASP 可运行在三种环境下。1) WINDOWS NT server 4.0 运行 IIS 3.0(Internet Information Server)以上。2) WINDOWS NT workstation 4.0 运行 Peer Web Server 3.0 以上。3) WINDOWS 95/98 运行 PWS(Personal Web Server)。其中以 NT server 上的 IIS 功能最强,提供了对 ASP 的全面支持,是创建高速、稳定的 ASP 主页的最佳选择。4.ASP 的内建对象ASP 提供了六个内建对象,供用户直接调用:1) Application 对象:负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。42) Session 对象:存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB 页面跳转时,Session 中的变量在用户整个会话过程中一直保存。Session 对象需 cookie 支持。3) Request 对象:从用户端取得信息传递给服务器,是 ASP 读取用户输入的主要方法。4) Response 对象:服务器将输出内容发送到用户端。5) Server 对象:提供对服务器有关方法和属性的访问。6) Object Context 对象:IIS 4.0 新增的对象,用来进行事务处理。此项功能需得到 MTS(Microsoft Transcation Server)管理的支持。5. ASP 的主要内置组件:1) Ad Rotator 组件:用来按指定计划在同一页上自动轮换显示广告,用于WWW 上日益重要的广告服务。 2) Browser Capabilities 组件:确定访问 WEB 站点的用户浏览器的功能数据,包括类型、性能、版本等。3) Database Access 组件:提供 ADO (ActiveX Data Objects)来访问支持 ODBC的数据库。4) File Access 组件:提供对服务器端文件的读写功能。5) Content Linking 组件:生成 WEB 页内容列表,并将各页顺序连接,用于制作导航条。5此外,还可安装 Myinfo、Counters、Content Rotator、Page Count 等组件,用户也可自行编制 Actiive 组件,以提高系统的实用性。6. Database Access 组件 ADOWWW 上很重要的应用是访问 WEB 数据库,用 ASP 访问 WEB 数据库时,必须使用 ADO 组件,ADO 是 ASP 内置的 ActiveX 服务器组件(ActiveX Server Component),通过在 WEB 服务器上设置 ODBC 和 OLEDB 可连接多种数据库:如 SYBASE、ORACLE、INFORMIX、SQL SERVER、ACCESS、VFP 等,是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。ADO 组件主要提供了以下七个对象和四个集合来访问数据库。1) Connection 对象:建立与后台数据库的连接。2) Command 对象:执行 SQL 指令,访问数据库。3) Parameters 对象和 Parameters 集合:为 Command 对象提供数据和参数。4) RecordSet 对象:存放访问数据库后的数据信息,是最经常使用的对象。5) Field 对象和 Field 集合:提供对 RecordSet 中当前记录的各个字段进行访问的功能。6) Property 对象和 Properties 集合:提供有关信息,供Connection、Command、RecordSet、Field 对象使用。67) Error 对象和 Errors 集合:提供访问数据库时的错误信息。三. ASP 访问数据库步骤在 ASP 中,使用 ADO 组件访问后台数据库,可通过以下步骤进行:1. 定义数据源在 WEB 服务器上打开“控制面板”,选中“ODBC”,在“系统 DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“SQL SERVER”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采用 Jscript。2,使用 ADO 组件查询 WEB 数据库1) 调用 Server.CreateObject 方法取得“ADODB.Connection”的实例,再使用Open 方法打开数据库:conn = Server.CreateObject(“ADODB.Connection”)conn.Open(“HT”)2) 指定要执行的 SQL 命令连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过 SQL指令来完成的,如要在数据表 signaltab 中查询代码中含有“X”的记录sqlStr = “select * from signaltab where code like %X%”rs = conn.Execute(sqlStr)3) 使用 RecordSet 属性和方法,并显示结果7为了更精确地跟踪数据,要用 RecordSet 组件创建包含数据的游标,游标就是储存在内存中的数据。rs = Server.CreateObject(“ADODB.RecordSet”)rs.Open(sqlStr,conn,1,A)注:A=1 读取A=3 新增、修改、删除在 RecordSet 组件中,常用的属性和方法有:rs.Fields.Count: RecordSet 对象的字段数。rs(i).Name: 第 i 个字段的名称,i 为 0 至 rs.Fields.Count-1rs(i): 第 i 个字段的数据,i 为 0 至 rs.Fields.Count-1rs(“字段名“): 指定字段的数据。rs.Record.Count:游标中的数据记录总数。rs.EOF: 是否最后一条记录。rs.MoveFirst: 指向第一条记录。rs.MoveLast: 指向最后一条记录。rs.MovePrev: 指向上一条记录。rs.MoveNext: 指向下一条记录。rs.GetRows: 将数据放入数组中。rs.Properties.Count:ADO 的 ResultSet 或 Connection 的属性个数。rs.Properties(item).Name:ADO 的 ResultSet 或 Connection 的名称。rs.Properties: ADO 的 ResultSet 或 Connection 的值。rs.close(): 关闭连接。4) 关闭数据库8conn.close() 四.查询 WEB 数据库举例下面这段示例程序是访问 SQL SERVER 数据库的 signaltab 表,表中有三个字段:code(代码字段,字符型,3 位),class(分类字段,字符型,10 位),memo(备注字段,字符型,20 位)。程序中数据源 DSN:HT、用户名:client、口令:passwd。屏幕输入页面 input.asp% language=javascript %ONCLICK=“window.history.back()“ 9数据库处理程序 shotquery.asp处理 SSI 文件时出错var signalCode=Request.Form(“signalCode“);dbConn = Server.CreateObject(“ADODB.Connection“);dbConn.open(“DSN=HT;UID=client;PWD=passwd“); rs = Server.CreateObject(“ADODB.RecordSet“);var sqlStr = “select * from signaltab order by code“;rs.open(sqlStr,dbConn,1);if(rs.RecordCount “);Response.write(“);else Response.write(“数据查询结果“);Response.write(“代码分类备注“);for(var i = 1;i “+rs(“code“)+“);Response.write(“+rs(“class“)+“);Response.write(“+rs(“memo“)+“);Response.write(“);rs.MoveNext();else break;Response.write(“);rs.close();dbConn.close();
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号