
Web数据库访问技术通常是通过三层结构来实现的。目前建立与Web数据库连接访问的技术方法可归纳为CGI技术,ODBC技术和ASP、JSP、PHP技术。
CGI技术
CGI(Common Gateway Interface,通用网关界面)是一种Web服务器上运行的基于Web浏览器输入程序的方法,是最早的访问数据库的解决方案。CGI程序可以建立网页与数据库之间的连接,将用户的查询要求转换成数据库的查询命令,然后将查询结果通过网页返回给用户。
CGI程序需要通过一个接口才能访问数据库。这种接口多种多样,数据库系统对CGI程序提供了各种数据库接口如Perl、C/C++、VB等。为了使用各种数据库系统,CGI程序支持ODBC方式,通过ODBC接口访问数据库。
ODBC技术
ODBC(Open Database Connectivity,开放数据库互接)是一种使用SQL的应用程序接口(API)。ODBC最显著的优点就是它生成的程序与数据库系统无关,为程序员方便地编写访问各种DBMS的数据库应用程序提供了一个统一接口,使应用程序和数据库源之间完成数据交换。ODBC的内部结构为4层:应用程序层、驱动程序管理器层、驱动程序层、数据源层。它们之间的关系如图1-5所示。由于ODBC适用于不同的数据库产品,因此许多服务器扩展程序都使用了包含ODBC层的系统结构。
Web服务器通过ODBC数据库驱动程序向数据库系统发出SQL请求,数据库系统接收到的是标准SQL查询语句,并将执行后的查询结果再通过ODBC传回Web服务器,Web服务器将结果以HTML网页传给Web浏览器,工作原理如图1-6所示。
由于Java语言所显示出来的编程优势赢得了众多数据库厂商的支持。在数据库处理方面,Java提供的JDBC为数据库开发应用提供了标准的应用程序编程接口。与ODBC类似,JDBC也是一种特殊的API,是用于执行SQL语句的Java应用程序接口。它规定了Java如何与数据库之间交换数据的方法。采用Java和JDBC编写的数据库应用程序具有与平台无关的特性。
ASP、JSP、PHP技术
ASP是Microsoft开发的动态网页技术,主要应用于Windows NT+IIS或 Windows 9x+PWS平台。确切地说ASP不是一种语言,而是Web服务器端的开发环境。利用ASP可以产生和运行动态的、交互的、高性能的Web服务应用程序。ASP支持多种脚本语言,除了VBScript和Pscript,也支持Perl语言,并且可以在同一ASP文件中使用多种脚本语言以发挥各种脚本语言的最大优势。但ASP默认只支持VBScript和Pscript,若要使用其他脚本语言,必须安装相应的脚本引擎。ASP支持在服务器端调用ActiveX组件ADO对象实现对数据库的 *** 作。在具体的应用中,若脚本语言中有访问数据库的请求,可通过ODBC与后台数据库相连,并通过ADO执行访问库的 *** 作。关于ASP的编程技术将会在第7章中详细介绍。
JSP是Sun公司推出的新一代Web开发技术。作为Java家族的一员,几乎可以运行在所有的 *** 作系统平台和Web服务器上,因此JSP的运行平台更为广泛。目前JSP支持的脚本语言只有Java。JSP使用JDBC实现对数据库的访问。目标数据库必须有一个JDBC的驱动程序,即一个从数据库到Java的接口,该接口提供了标准的方法使Java应用程序能够连接到数据库并执行对数据库的 *** 作。JDBC不需要在服务器上创建数据源,通过JDBC、JSP就可以实现SQL语句的执行。
PHP是Rasmus Lerdorf推出的一种跨平台的嵌入式脚本语言,可以在Windows、UNIX、Linux等流行的 *** 作系统和IIS、Apache、Netscape等Web服务器上运行,用户更换平台时,无需变换PHP代码。PHP是通过Internet合作开发的开放源代码软件,它借用了C、Java、Perl语言的语法并结合PHP自身的特性,能够快速写出动态生成页面。PHP可以通过ODBC访问各种数据库,但主要通过函数直接访问数据库。PHP支持目前绝大多数的数据库,提供许多与各类数据库直接互连的函数,包括Sybase、Oracle、SQL Server等,其中与SQL Server数据库互连是最佳组合。
作为web开发人员 我们的生活围绕着数据 *** 作 我们建立数据库来存储数据 写编码来访问和修改数据 设计网页来采集和汇总数据 本文是研究在 中实现这些常见的数据访问模式之技术的长篇系列教程的第一篇 我们将从创建一个软件框架开始 这个框架的组成部分包括一个使用强类型的DataSet的数据访问层(DAL) 一个实施用户定义的业务规则的业务逻辑层(BLL) 以及一个由共享页面布局的 网页组成的表现层 在打下这个后端的基础工作之后 我们将开始转向报表 示范如何显示 汇总 采集 和验证web 应用的数据 这些教程旨在简明扼要 使用了许多屏幕截图 提供了按步就 班(step by step)的指导 带你经历这个开发过程 每个教程都有C# 版和VB版 并且附有涉及的完整的编码的下载 (这第一个教程比较长 但以后其他的教程将以更容易消化的篇幅推出 )
在这些教程中 我们将使用置于App_Data 目录内的微软SQL Server Express版的Northwind数据库 除了数据库文件外 App_Data目录还带有用于创建数据库的SQL脚本 万一你想使用别的数据库版本的话 如果你愿意的话 你也可以直接从微软下载这些脚本 如果你使用别的SQL Server版本的Northwind数据库的话 你需要更新nfig文件中的NORTHWNDConnectionString设置 本教程中的web应用是个基于文件系统的网站项目 是使用Visual Studio 专业版建立起来的 但是 所有的教程都可以在Visual Studio 的免费版本Visual Web Developer中运行
在这个教程里 我们将从头开始 先创建一个数据访问层(DAL) 然后在第二个教程里创建一个业务逻辑层(BLL) 在第三个教程里设计页面布局和导航 以后的教程将建立在这三个教程的基础之上 在第一个教程里 我们要讨论的内容多多 所以 请打开Visual Studio 让我们动起手来!
第一步 创建一个Web项目 配置数据库连接
在我们开始创建数据访问层(DAL)之前 我们首先需要创建一个网站 以及建立一个数据库 我们从创建一个基于文件系统的 网站开始 次序如下 打开文件(File)菜单 选择新的网站 (New Web Site) 系统会显示一个新网站对话框 选择 网站模板(Web Site template) 设置定 位(Location)列表的选项为文件系统( File System) 然后选这一个放置这个网站的文件夹 然后选择编程语言为C#
当前比较流行的Web数据库主要有:SQL Server、MySQL和Oracle。这3种数据库适应性强,性能优异,容易使用,在国内得到了广泛的应用 1.SQL Server 是微软公司从Sysbase获得基本部件的使用许可后开发出的一种关系型数据库。目前最新的版本是SQL Server 2000,但SQL Server 70仍在广泛使用。 由于均出自微软之手,使得SQL Server和Windows、IIS等产品有着天然的联系。事实上以Windows为核心的几乎所有微软的软件产品都采用了一致的开发策略,包括界面技术、面向对象技术、组件技术等,这样在微软的软件中很多都可以相互调用,而且配合得非常密切。因此如果用户使用的是Windows *** 作系统,那么IIS、 SQL Server就应该是最佳的选择。 2.MySQL 是当今Unix或Linux类服务器上广泛使用的Web数据库系统。它于1996年诞生于瑞典的TcX公司,支持大部分的 *** 作系统平台。MySQL的设计思想快捷、高效、实用。虽然它对ANSI SQL标准的支持并不完善,但支持所有常用的内容,完全可以胜任一般Web数据库的工作。由于它不支持事务处理,MySQL的速度比一些商业数据库快 2~3倍,并且MySQL还针对很多 *** 作平台做了优化,完全支持多CPU系统的多线程方式。 在编程方面,MySQL也提供了C、C++、Java、Perl、Python和TCL等API接口,而且有MyODBC接口,任何可以使用ODBC接口的语言都可以使用它。更重要的是,MySQL的源代码是公开的,可以免费使用,这就使得MySQL成为许多中小型网站、个人网站追捧的明星。 3.Oracle 是Oracle公司开发出的一种面向网络计算机并支持对象关系模型的数据库产品。它是以高级结构化查询语言为基础的大型关系数据库,是目前最 流行的客户/服务器体系机构的数据库之一。目前广泛使用的版本是Oracle 8i,它之所以备受用户喜爱是因为它具有以下突出的特点: (1)支持大型数据库、多用户和高性能的事务处理。Oracle支持最大数据库,其大小可达到几百千兆,可充分利用硬件设备;支持大量用户同时对数据库执行各种数据 *** 作,并使数据征用最小,保证数据一致性;系统维护具有很高的性能,Oracle每天可连续24小时工作, 正常的系统 *** 作(后备或个别系统故障)不会中断数据库的应用;可在数据库级或子数据库级上控制数据的可用性。 (2)Oracle 遵守数据库存取语言、 *** 作系统、用户接口、和网络通讯协议的工业标准,所以它是一个开放系统,保护了用户的投资。美国标准化和技术研究所(NIST)对Oracle Server进行过检验,完全与ANSI/ISO SQL89标准相兼容 (3)实施安全性控制和完整性控制。Oracle为限制系统对各监控数据库存取提供可靠的安全性,并为可接受的数据指定标准,保证数据的完整性。 (4)支持分布式数据库和分布式处理。Oracle为了充分利用计算机系统和网络,允许将处理分为数据库服务器和客户应用程序处理,所有共享的数据管理由数据库管理系统的计算机处理,而运行数据库应用的工作站集中于解释和显示数据。通过网络连接环境,Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。分布式系统像集中式数据库一样具有透明性和数据一致性。 上面介绍的3种数据库产品是目前最常用的3种大型关系数据库系统,它们虽然在体系结构和 *** 作方法上有许多相似的地方,但是在应用环境上还是各有侧重的。一个应用系统在选用数据库时,性能和价格时首先要考虑的两个因素,表1-1列出了这3种数据库在性能和价格上的对比情况,在使用时不同的系统应针对实际情况采用合适的方案。 从用户的技术水平以及国内软件应用的现状来看,SQL Sever应该是一个较好的选择,尤其是对初学者而言。
以上就是关于Web数据库的访问技术全部的内容,包括:Web数据库的访问技术、创建一个Web项目,配置数据库连接、几种常用Web数据库的比较等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)