Web数据库应用系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文由玉雨轩104贡献
ppt文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。
Web数据库应用系统
本章教学目标:
? ? 理解Web数据库的概念 了解常用Web数据库的特点 了解脚本程序与数据库连接的常用方法
Web概述
World Wide Web,简称WWW、Web、W3、万维网等, 是Internet上最方便和最受用户欢迎的信息浏览方式,是 电子商务系统的核心技术。 ? 它是一个基于“超文本”(Hypertext)的信息发布工具, 为用户提供了一种友好、方便而功能强大的查询工具。
Web工作模式
从技术角度讲,Web是一种客户-服务器 (Client/Server,C/S)体系机构,在这个结构中, 充当服务器的就是Web服务器软件,而计算机上 运行的Web浏览器就是对服务器发出请求的客户 机程序 ? 当Web服务器收到Web浏览器的请求并进行有关 处理后,将请求的数据发送到Web浏览器,浏览 器对接收到的数据进行解释并在屏幕上显示出来。 实际上是一个请求-应答的过程。这种工作模式通 常称为B/S模式(Browser/Server模式)。
与Web有关的一些概念
? 1.超文本和链接 超文本是一种通过文本之间的链接将多个分立的文本组合起来的一种格式。 在浏览超文本时,看到的是文本信息本身,同时文本中含有一些“热点”, 选中这些“热点”又可以浏览到其他的超文本。这样的“热点”就是超文本 中的链接。 2.Web页面 阅读超文本不能使用普通的文本编辑程序,必须在专门的浏览软件如Internet Explorer中进行的。浏览环境下的超文本就是通常所说的Web页面。 3.统一资源定位符 要在WWW上浏览或查询信息,必须在浏览器上输入查询目标的地址,这就 是统一资源定位地址URL,也称Web地址,俗称“网址”。 4.Web浏览器 5.Web服务器 6.超文本传输协议 7.超文本标记语言
? ? ? ? ? ? ?
Web数据库
数据库是指按照一定的结构和规则组织起来的相关数据的 集合,是存放数据的“仓库”,据此将Web数据库定义为 以后台数据库为基础的,加上一定的前台程序,通过浏览 器完成数据存储、查询等操作的系统。 ? 可以认为:一个Web数据库就是用户利用浏览器作为输入 接口,输入所需要的数据。浏览器将这些数据传送给网站, 而网站再对这些数据进行处理,例如,将数据存入后台数 据库,或者对后台数据库进行查询操作等,最后网站将操 作结果传回给浏览器,通过浏览器将结果告知用户。网站 上的后台数据库通常被称为Web数据库。
Web应用系统
传统的C/S结构大多属于两层结构,整个应用程序都分布在客户端计 算机上,数据库和文件系统则放在服

务器上。由于与数据库打交道的 代码在客户机上运行,势必造成网络流量的增加。如果多个客户机同 时进行数据库操作,容易造成网络阻塞。另外,两层结构的应用程序 维护起来特别困难。每一次应用程序的升级都需要更新所有的客户端, 在一些大型的企业应用中,由此造成的成本是惊人的。 ? 为了解决上述问题,人们提出了基于Web的三层应用程序的解决方案, 即将应用程序分为三层,每一层都通过一些定义好的接口与其他各层 通信。一般来讲这三层在物理上和逻辑上都是可以分离的。第一层是 表示层,主要向用户展现图形界面;第二层是封装应用程序的具体商 务逻辑,负责接受表示层的数据,按照业务规则进行一定的处理后传 送到数据层,再将结果返回给客户端;第三层是数据层,主要是存储 数据,可以是数据库、文件系统或是目录服务。
2.Web应用系统的处理过程
? ? ? ? ? ? ? ? ? ? 基于Web的应用系统的处理过程遵循如下步骤。 ① 在计算机上运行一个Web浏览器客户机程序,如Netscape或者Internet Explorer。 ② 通过网络与Internet建立连接。 ③ 向Internet上的Web服务器发送请求。为此,浏览器要发送一个包含以下 内容的消息: 传输协议(HTTP://); URL地址:例如/。 URL / ④ 服务器收到请求后,把Web浏览器送来的要求向Web服务器上的应用程序 传递。 ⑤ 应用程序根据指示访问相应的数据库。 ⑥ 应用程序把访问数据库的结果转换为Web浏览器能够显示的数据格式。 ⑦ 服务器将所请求的结果传到用户的机器上。 ⑧ 浏览器接收到服务器传来的HTML文件后,将对它进行解释并在屏幕上显 示出来。
3.Web应用系统的优点
这种基于Web的应用系统从根本上克服了 传统的基于两级客户-服务器结构的数据库 系统所固有的缺陷和不足,具有如下优点。 ? (1)可维护性 ? (2)安全性 ? (3)一统化 ? (4)减少客户机负载,提高系统反应速度 ? (5)人力资源的优化
常用Web数据库的比较
当前比较流行的Web数据库主要有:SQL Server、 MySQL和Oracle。这三种数据库适应性强,性能 优异,容易使用,在国内得到了广泛的应用。 ? SQL Server是微软公司从Sybase获得基本部件的 Server Sybase 使用许可后开发出的一种关系型数据库。由于均 出自微软之手,使得SQL Server与Windows、IIS 等产品有着天然的联系。这样它就可以同微软的 很多软件相互调用,而且配合得非常密切。因此 如果用户使用的是Windows操作系统,那么SQL Server应该是首选。
MySQL是当今UNIX或Linux类服务器上广泛使用的Web数 据库系统。它于1996年诞生于瑞典的Tc

X公司,支持大部 分的操作系统平台。MySQL的设计思想快捷、高效、实 用。虽然对ANSI SQL标准的支持并不完善,但支持所有 常用的内容,完全可以胜任一般Web数据库的工作。由于 不支持事务处理,所以MySQL的速度要比一些商业数据 库快2~3倍,并且MySQL还针对很多操作平台做了优化, 完全支持多CPU系统的多线程方式。 ? 在编程方面,MySQL也提供了C、C++、Java、Perl、 Python和TCL等API接口,而且有MyODBC接口,任何可 以使用ODBC接口的语言都可以使用它。更重要的是 MySQL的源代码是公开的,可以免费使用,这就使得 MySQL成为许多中小型网站、个人网站的首选产品。
?
? ?
Oracle是Oracle公司开发出的一种面向网络计算机并支持对象关系模型的数据库产品。 它是以高级结构化查询语言为基础的大型关系数据库,是目前最流行的客户-服务器体 系结构的数据库之一。Oracle之所以备受用户喜爱是因为具有以下突出的特点。 (1)支持大型数据库、多用户和高性能的事务处理。Oracle支持最大数据库,其大小 可达到数百千兆,可充分利用硬件设备;支持大量用户同时对数据库执行各种数据操 作;系统维护具有很高的性能,Oracle每天可连续24小时工作,正常的系统操作不会 中断数据库的应用;可在数据库级或子数据库级上控制数据的可用性。 (2)Oracle遵守数据库存取语言、操作系统、用户接口和网络通信协议的工业标准, 所以是一个开放系统,保护了用户的投资。美国标准化和技术研究所(NIST)对 Oracle Server进行过检验,完全与ANSI/ISO SQL89标准相兼容。 (3)实施安全性控制和完整性控制。Oracle为限制系统对各监控数据库存取提供可靠 的安全性,并为可接受的数据指定标准,保证数据的完整性。 (4)支持分布式数据库和分布式处理。为了充分利用计算机系统和网络,Oracle允许 将处理分为数据库服务器和客户应用程序处理,所有共享的数据管理由数据库管理系 统的计算机处理,而运行数据库应用的工作站集中于解释和显示数据。通过网络连接 环境,Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用 户存取。分布式系统像集中式数据库一样具有透明性和数据一致性。
Web数据库访问技术
Web页面与数据库的连接是Web数据库的基本要 求。目前基于Web数据库的连接方案主要有两种 类型:服务器端和客户端方案。服务器端方案实 现技术有CGI、SAPI、ASP、JSP、PHP等;客 户端方案实现技术有JDBC(Java Database Connectivity)、DHTML(Dynamic HTML)等。 总之,在浏览器中访问Web数据库的方法较多, 开发Web应用程序的软件人员需要选择适

当的方 法。下面就目前比较常用的数据库访问技术ASP、 JSP、JDBC等内容进行简单的介绍。
ODBC
ODBC是“开放数据库互连”的英文简称,是一种使用 SQL的应用程序接口。ODBC的一个最显著的优点是用它 生成的程序与数据库或数据库引擎无关。ODBC可使程序 员方便地编写访问各DBMS厂商的数据库的应用程序,而 不需了解其产品的细节。Web服务器通过数据库驱动程序 ODBC向数据库服务器发出SQL请求,数据库服务器接到 的是标准的SQL查询语句,数据管理系统执行SQL查询并 将查询结果再通过ODBC传回Web服务器。许多服务器扩 展程序使用包含ODBC层的系统结构。ODBC是为调用关 系数据库提供统一途径的一类API,由于它适用于许多不 同的数据库产品,因此是服务器扩展程序开发者们理所当 然的选择。
JDBC
Java语言显示出优于以往编程语言的诸多特色,赢得了众多数据库厂 商的支持。由于Java是一种面向对象的、多线程的网络编程语言,因 此能够用多个线程对应多个不同的数据库进行查询操作。用户发出的 同一条查询语句同时启动多个线程,并行运行,同时进行异构数据库 的联合查询。 ? 在数据库处理方面,Java还提供了JDBC(Java Database Connectivity,Java数据库连接),为数据库开发应用提供了标准的 应用程序编程接口。与ODBC类似,JDBC也是一种特殊的API,是执 行SQL语句的Java应用程序接口,规定了Java如何与数据库进行交互 作用。JDBC由一组用Java语言写的类和接口组成,利用Java机制设 计的标准SQL数据库连接接口JDBC去访问数据库。JDBC也是一种规 范,其宗旨是让各数据库开发商为Java程序员提供标准的数据库访问 类和接口。JDBC与Java结合,使用户很容易地把SQL语句传送到任 何关系数据库中,程序员用它编写的数据库应用软件,可在各种数据 库系统上运行。采用JDBC可以很容易用SQL语句访问任何商用数据 库,如SQL Server,Sybase或Oracle。所以,采用Java和JDBC编写 的数据库应用程序具有与平台无关的特性。
ASP技术
ASP(Active Server Pages,动态服务器主页)是由 Microsoft开发的一项新技术。ASP是一个基于Web服务器 端的开发环境,利用它可以产生和运行动态的、交互的、 高性能的Web服务应用程序。与常见的在客户端实现动态 主页的技术如Java applet、ActiveX Control、VB Script、 JavaScript等不同,ASP中的命令和Script语句都是由服务 器来解释执行的,执行结果产生动态生成的Web页面并送 到浏览器;而客户端技术的Script命令则是由浏览器来解 释执行的。由于ASP在服务器端解释执行,开发者可以不 必考虑浏览器是否支持ASP。同时由于它在服务器端执行, 开发者也

不必担心别人下载程序以窃取编程逻辑,从而保 护了开发者的利益。
? ? ? ? ? ? ?
ASP具有如下特点。 (1)编程简单 ASP使用描述性的语言,只使用简单的语法和数学表达式,而且不需要编译。 (2)可嵌入到HTML文件中 ASP不需要别的设计环境,ASP文件的制作和HTML类似,且和HTML开发集 成,可以在同一个过程完成。 (3)支持广泛 ASP除支持VB Script、Java Script外,还能以插件形式支持第三方语言,如 Perl、TCL等。 ASP通过后缀名为.asp的ASP文件来实现,一个ASP文件相当于一个可执行 文件,因此必须放在Web服务器上有可执行权限的目录下。当浏览器向Web 服务器请求调用ASP文件时,就启动了ASP。Web服务器开始调用ASP,将 被请求的.asp文件从头读到底,执行每一个命令,然后动态生成一个HTML页 面并送到浏览器。通过ASP内置的对象、服务器组件可以完成非常复杂的任 务,而且用户还可以自己开发或利用别人开发的服务器组件完成专门的任务。
JSP
JSP(Java Server Pages,Java服务器主页)是 由SUN公司于1999年6月推出的新技术。其实早 在1998年4月的时候就发布了JSP0.90规范, 1999年1月发布JSP0.92规范,同时推出支持JSP 的Web服务器Java Web Server 2.0,JSP技术迅 速流行起来。1999年11月,SUN公司发布 JSP1.2规范和Java Servlet API 2.3。 ? JSP的结构与ASP非常相似。不过ASP一般只应 用于Windows NT/2000平台,而JSP则可以不加 修改地在85%以上的Web Server上运行,其中包 括了NT的系统,符合一次写入之后,可以运行在 任何环境。
JSP具有如下特点。 ? (1)JSP的效率和安全性更高 ? ASP以源码形式存放,以解释方式运行,每次调用ASP网页都需要对 源码进行解释,运行效率不高。JSP在运行以前先被编译成字节码, 字节码由Java虚拟机解释执行,比源码解释的效率高;服务器上还有 字节码的Cache机制,能提高字节码的访问效率。第一次调用JSP网 也可能稍慢,因为它被编译成Cache,以后就快多了。同时,JSP源 程序不大可能被下载,特别是JavaBean程序完全可以放到不对外的 目录中。 ? (2)JSP的组建方式更方便 ? ASP通过COM组件来扩充复杂的功能,如文件上载、发送email,以 及将业务处理或者复杂计算分离出来,成为独立可重复利用的模块。 而JSP通过JavaBean实现了同样的功能扩充。 ? (3)JSP的适应平台更广 ? 因为Java字节码都是标准的、与平台无关的,这是对于开发跨平台的 应用系统特别有利,能显著地减少开发周期和费用。
Web数据库应用系统
? ? ? 开发一个基于Web的数据库应用系统步骤如图9-2所示。 其中,安装Web服务器、设置ODBC驱动程序和通过浏览器浏览三部分工作, 只需

按照相关软件的安装或使用说明执行即可。 网页设计的主要工作是为用户提供能访问数据库的一组界面,即网页。 所以,开发一个基于Web的数据库应用系统,很重要也很关键的一步是首先 规划、设计应用系统的数据库,从实际开发工作来看,数据库的设计对系统 开发的成败至关重要。创建数据库的主要步骤是:首先,设计适合系统要求 的数据库;然后,建立数据库及库表,并装入一些数据;接下来,需要新建 一个用户账号以便可以访问数据库,并用GRANT命令赋予此用户特权。对于 这部分工作,通过前面章节的学习,应该已经很熟悉了。
ASP简介
1.ASP访问数据库的原理 ? ASP是服务器端的脚本执行环境,可用来产生和执行动态 的高性能的Web服务器程序。当用户使用浏览器请求ASP 主页时,Web服务器响应,调用ASP引擎来执行ASP文件, 并解释其中的脚本语言,通过ODBC连接数据库,最后 ASP生成包含有数据查询结果的HTML主页返回用户端显 示。如图9-3所示。
2.ASP页面的结构
ASP文件通常由以下4部分构成。 标准的HTML标记:所有的HTML标记均可使用。 ASP语法命令:位于<% %>标签内的ASP代码。 服务器端的include语句:可用#include语句调入 其他ASP代码,增强了编程的灵活性。 ? 脚本语言:ASP自带JavaScript和VBScript两种脚 本语言,增加了ASP的编程功能。用户也可安装 其他脚本语言,如Perl等。 ? ? ? ?
3.ASP的运行环境
目前ASP可运行在三种环境下: ? WINDOWS NT server 4.0运行IIS 3.0(Internet Information Server)以上。 ? WINDOWS NT workstation 4.0运行Peer Web Server 3.0以上。 ? WINDOWS 95/98运行PWS(Personal Web Server)。 ? 其中以NT server上的IIS功能最强,提供了对ASP 的全面支持,是创建高速、稳定的ASP主页的最 佳选择。
4.ASP的内建对象
ASP提供了6个内建对象,供用户直接调用。 ? Application对象:负责管理所有会话信息,可用来在指定的应用程序 的所有用户之间共享信息。 ? Session对象:存储特定用户的会话信息,只被该用户访问,当用户 在不同Web页面跳转时,Session中的变量在用户整个会话过程中一 直保存。Session对象需cookie支持。 ? Request对象:从用户端取得信息传递给服务器,是ASP读取用户输 入的主要方法。 ? Response对象:服务器将输出内容发送到用户端。 ? Server对象:提供对服务器有关方法和属性的访问。 ? Object Context对象:IIS 4.0新增的对象,用来进行事务处理。此项 功能需MTS(Microsoft Transcation Server,微软事务服务器)的支 持。
5.ASP的主要内置组件
ASP的主要内置组件如下。 ? Ad Rotator组件:用来按指定计划在同一页上自动轮换显 示广

告,用于Web上日益重要的广告服务。 ? Browser Capabilities组件:确定访问Web站点的用户浏览 器的功能数据,包括类型、性能、版本等。 ? Database Access组件:提供ADO来访问支持ODBC的数 据库。 ? File Access组件:提供对服务器端文件的读写功能。 ? Content Linking组件:生成Web页内容列表,并将各页顺 序连接,用于制作导航条。 ? 此外,还可安装Myinfo、Counters、Content Rotator、 Page Count等组件,用户也可自行编制Active组件,以提 高系统的实用性。
6.Database Access组件ADO
Web上很重要的应用是访问Web数据库,用ASP访问Web数据库时,必须使 用ADO组件,ADO是ASP内置的ActiveX服务器组件,通过在Web服务器上 设置ODBC和OLE DB可连接多种数据库,如Sybase、Oracle、Informix、 Sql Server、Access等,是对目前微软所支持的数据库进行操作的最有效和 最简单直接的方法。 ADO组件主要提供了以下7个对象和4个集合来访问数据库。 Connection对象:建立与后台数据库的连接。 Command对象:执行SQL指令,访问数据库。 Parameters对象和Parameters集合:为Command对象提供数据和参数。 RecordSet对象:存放访问数据库后的数据信息,是最经常使用的对象。 Field对象和Field集合:提供对RecordSet中当前记录的各个字段进行访问的 功能。 Property对象和Properties集合:提供有关信息,供Connection、Command、 RecordSet、Field对象使用。 Error对象和Errors集合:提供访问数据库时的错误信息。
? ? ? ? ? ? ?
ASP访问数据库示例
ASP可以与ADO结合,以建立提供数据库信息的主页内容, 在主页上执行SQL命令,让用户在浏览器画面中输入、更 新和删除站点服务器的数据库信息;ADO使用 RecordSets对象,作为数据的主要接口;ADO可使用 JavaScript和VBscript语言来控制数据库的访问,与查询 结果的输出显示画面;ADO可连接多种的数据库,包括 SQL Server、Oracle、Informix等支持ODBC的数据库。 ? 在ASP中,使用ADO组件访问后台数据库,可通过以下步 骤进行。 ? (1)定义数据源 ? (2)使用ADO组件查询Web数据库 ? (3)查询Web数据库

相关文档
最新文档