JSP数据库访问技术论文

2024-09-18

JSP数据库访问技术论文(共5篇)

JSP数据库访问技术论文 篇1

摘要:连接数据库是JSP技术的难点之一,环境配置比较复杂,文章将结合实例详细介绍如何实现在JSP技术中对SQLServer2000数据库的访问,能够实现对数据库的基本操作。主要包括JSP开发环境搭建,下载并安装SQL Server2000数据库驱动程序,在MyEclipse环境下通过JSP连接SQLSever2000数据库。

关键词:JSP,SQL Server2000,数据库访问,MyEclipse

随着网络技术的飞速发展,JSP成为了一种主流的动态网页开发技术。目前大部分的电子商务网站都需要利用数据库来存储重要的数据信息,对数据库中的数据进行查询、修改、更新、删除等操作,这些都要实现JSP对数据库的访问。JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。

SQL Server2000是由微软公司开发的一款关系型数据库管理系统,其可以使用SQL语法来操作数据库,数据表、关系、视图、索引等对象,也可以用其提供的工具和向导方便的地建立和访问数据库对象。

连接数据库是JSP技术的难点之一,环境配置比较复杂,本文将结合实例详细介绍如何实现在JSP技术中对SQL Server2000数据库的访问,能够实现对数据库的基本操作。

1 JSP开发环境搭建

JSP开发环境选用操作系统为Windows,要求安装JDK,服务器Tomcat,开发工具Eclipse,并安装My E-clipse插件,通过使用My Eclipse来进行Web开发。

1.1 下载并安装JDK

如果需要运行有关的Java程序,就需要安装JRE(Java Runtime Environment),即Java运行时环境。而如果需要编译并执行有关Java程序,这时就必须安装JDK(Java 2 Software Development kit),即Java软件开发工具包。下载JDK可以从SUN公司的官方网站获得免费的JDK,下载安装jdk1.6.0_10,并配置系统环境变量。

1.2 下载并安装Tomcat

Web服务器选择Tomcat服务器。Tomcat服务器是由Apache开源组织开发并维护的,能够支持JSP和Servlet开发使用,而且Tomcat服务器是免费产品,并且提供了其源代码。下载并安装在C:Program FilesApache Software FoundationTomcat 6.0。

1.3 下载并安装Eclipse

Eclipse是一个开放源代码、基于Java的可扩展开发平台。就Eclipse本身而言,它只是一个框架和一组被称为平台核心的服务程序,用于通过插件组件构建开发环境。通过Eclipse开发平台可以很方便的进行Java程序开发,同时如果需要进行Java Web开发,则只需安装相应的插件即可。下载并安装eclipse-SDK-3.5.1-win32.zip。

1.4 下载并安装My Eclipse

单纯的Eclipse只能进行Java桌面开发,如果要进行Java Web开发,还需要安装Eclipse插件。My Eclipse是一个由众多插件结合的插件集合,它可以很方便的进行Java Web开发。打开My Eclipse的官方站点http://www.myeclipseide.com/,下载并安装myeclipse-8.0.0-win32.exe。

My Eclipse插件提供了非常强大的Web开发支持,通过其可以非常简单和方便的进行Web开发。通过My Eclipse可以新建Web项目、新建JSP页面,整合Tomcat以及部署项目。

2 下载并安装SQL Server2000数据库驱动

2.1 下载并安装SQL Server2000数据库驱动

通过JDBC专用驱动程序实现数据库访问的方法是通过java提供的用于各种数据库的专用驱动程序来实现对数据库的访问。使用这种方法,首先将相关的数据库专用驱动程序放到服务器的classpath路径中,其次在JSP程序中创建数据库连接就可以使用数据库中的信息进行数据处理操作。

到Microsoft官方网站下载了Microsoft SQL Server2000 Driver for JDBC驱动程序包,并安装配置环境变量classpath=C:Program FilesMicrosoft SQL Server 2000Driver for JDBClibmsbase.jar;C:Program FilesMicrosoft SQL Server 2000 Driver for JDBClibmssqlserver.jar;C:Program FilesMicrosoft SQL Server 2000 Driver for JD-BClibmsutil.jar。

把上面的三个文件(msbase.jar,mssqlserver.jar,msutil.jar)拷贝到tomcat6.0commonlib下面,重新启动tomcat。安装完成后,就可以通过JDBC驱动程序连接SQL Server2000数据库服务器了。

2.2 将SQL Server2000升级为sp3

当SQL Server 2000没有安装升级补丁时,Microsoft SQL Server 2000 Driver for JDBC驱动程序包不能正确连接,所以要对其进行升级。

到Microsoft的官方网站,下载升级程序chs_sql2ksp3.exe。安装该程序将SQL Server2000升级为sp3。

2.3 创建数据库和数据表

创建数据库,打开SQL Server 2000企业管理器,创建数据库myweb.

建立数据库表users,包含学号、学生名、密码三个字段。

在数据库表users中插入3条记录:

3 JDBC连接SQL数据库

3.1 连接SQL Server2000数据库

JDBC与数据库建立连接首先必须加载适当的驱动程序。一般使用Class的for Name()方法来加载驱动程序。所以可以使用Class.for Name("com.microsoft.jdbc.sqlserver.SQLServer Driver")来加载SQL Server2000的驱动程序。

连接数据库使用Driver Manager类的get Connection()方法来创建一个连接对象即可。要想创建一个连接对象还需要指定连接URL。其中连接SQL Server2000数据库的URL格式如下。

jdbc:microsoft:sqlserver://localhost[:端口号(默认1433)]/数据库名称[?参数1=参数值1&参数2=参数值2]

例如:

该例中登陆数据库的用户名为sa,登陆密码为sa。

3.2 代码测试

打开My Eclipse,建立项目wyyweb2,在其中建立jsp页面sqljdbc Driver.jsp,启动Tomcat,My Eclipse界面如图1所示。通过该实例,可以访问SQLServer2000数据库中的表users,并将表中的内容输出显示。程序代码如下。

3.3 输出界面

打开浏览器,地址栏中输入“http://localhost:8080/wyyweb2/sqljdbc Driver.jsp”,打开页面如图2所示。通过该测试实例,可以显示出数据库中表users的所有记录。从而实现了对于SQL Server2000数据库的访问。

4 结束语

在My Eclipse环境下开发JSP动态网页,功能强大,可视性好,可是用于和数据库的连接部分环境配置复杂,容易出错,本文通过JSP连接SQL Server2000数据库,详细讲解了其中的难点和在安装中需注意的问题,通过实例能快速掌握这些技术要点,并能验证配置能否成功。

参考文献

[1]肖化昆.JSP访问SQL Server2000数据库完全解析[J].计算机系统应用,2004(12):69-71.

[2]王晓军,田中雨,刘跃军,等.JSP动态网站开发基础教程与实验指导[M].清华大学出版社,2008.

JSP数据库访问技术论文 篇2

摘 要分析了几种网络计算模式的特点,针对客户机/服务器模式设计了一个地理信息系统(GIS)访问数据库的结构框架——客户端分为GIS功能层和数据库请求层两层,服务器存放数据,并将此结构与ESRI公司的空间数据库引擎(SDE)作了对比;通过比较几种数据库访问的程序实现方式,认为ODBCAPI在开放性方面是良好的.最后给出的MAPGIS实例表明:采用上述设计思路的应用系统不但利用了原有MAPGIS的研究成果,实现了GIS访问网络数据库的功能,而且还具有良好的开放性.

关键词地理信息系统,数据库访问,空间数据库引擎(SDE),C/S模式,ODBC.

引言

近年来,网络技术得到迅速的发展,这就为信息资源的共享提供了技术上的可能.作为信息密集型的地理信息系统(GIS)上升到网络平台可谓适逢其时.但从目前的应用情况来看,除了国外极少的公司拥有网络版的GIS之外,在国内还处于试验研制的阶段.因此,尽快地研制出我国自主版权的网络GIS的原型和产品,并在技术手段上达到国际先进水平,是摆在我们面前的一项迫切的任务.

1 网络计算的几种模式及特点

(1)传统的集中式.这是一种主机-终端模式,所有的计算任务和数据管理任务都集中在主机上,终端只是主机输入/输出设备的延长.这种模式的优点是容易管理,缺点是对主机的性能要求很高,也浪费了作为终端的计算机的计算能力,并且从性能价格比来看,在购置费用相当的情况下,一台主机的性能往往比不上几台计算机所组成网络的性能;因此这种模式已逐渐退出主流.

(2)客户机/服务器(client/server,简称C/S)模式.一般说来,在这种模式下,服务器只集中管理数据,而计算任务分散在客户机上,客户机和服务器之间通过网络协议来进行通讯.客户机向服务器发出数据请求,服务器将数据传送给客户机进行计算,计算完毕,计算结果可返回给服务器.这种模式的优点充分利用了客户机的性能,使计算能力大大提高;另外,由于客户机和服务器之间的通讯是通过网络协议进行的,是一种逻辑的联系,因此物理上在客户机和服务器两端是易于扩充的.它是目前占主流的网络计算模式.

(3)浏览器/服务器(browser/server)模式.在这种模式下,用户端只需一通用的浏览器,如Netscape或Explore,便代替了形形色色的各种应用软件.服务器则为Web服务器.浏览器和服务器之间通过TCP/IP这一通讯协议进行连接.浏览器发出数据请求,由Web服务器向后台取出数据并计算,将计算结果返回给浏览器.这种模式的优点是:由于用户端所用软件只是一个简单的浏览器,用户基本上无需培训,用户端软件也无需维护;软件的升级与修改只在服务器端进行,对用户透明;服务器与浏览器可处于不同的操作系统平台.其缺点为:Web动态技术不够成熟,各种标准有待统一,如各厂家发布的动态协议互不支持、浏览器之争等.总之,它是一种先进的但发展还未成熟的技术.

基于以上的分析,应选择客户机/服务器模式作为GIS访问网络数据库的实现模式.

2 C/S模式下的GIS访问网络数据库的结构设计

设计在总体上分为C/S两层(见图1),以充分利用C/S模式的跨平台、易扩充、数据独立等优点.在client端又分两层来进行设计——GIS功能层和数据请求层,GIS功能层是GIS的功能实现部分,数据请求层是GIS的数据实现部分.数据请求层作为一中间层,起到数据转换的作用,对上是具有GIS特点的数据文件,对下是标准的数据库记录.这种分层设计的形式一方面充分利用了现有的单机版本GIS研究成果;另一方面,GIS功能层和数据请求层的开发可同时进行,只要接口标准不变,本层的变动不会影响到另一层.

Fig.1 The general framework of GIS accessing database based on C/S model

值得一提的是ESRI公司的空间数据库引擎(spatial database engine,简称SDE)的设计方案(见图2).它是目前国际上领先的GIS数据处理的网络计算模型.其数据的访问形式为:由用户的应用程序(user application)通过SDE应用编程接口(SDE API)向SDE服务器提出空间数据请求,SDE服务器内存放有空间对象模型,并依据空间对象的特点在本地完成空间数据的搜索,并将搜索结果通过网络向用户的应用程序返回.

对比图1和图2可以看出两者采用的都是C/S模式,并且都将GIS功能实现与数据请求进行分层处理;所不同的是面向数据库的数据请求实现的位置:图1在客户机端实现,图2在服务器端实现.在服务器端实现的主要优点为:(1)对于空间对象模型及相关的计算模式的升级可以只在服务器端实现,而且对客户机端透明;(2)由于SDE服务器与数据库ORACLE 7.2的结合非常紧密,因此数据的搜寻速度非常快.对于图1来说,把数据请求层放在客户机端,对数据库的依赖程度就不同于SDE服务器,后者对数据库的选型有极强的依赖性(目前SDE服务器只在ORACLE 7.2实现),相反,它是一种非常开放的结构,它所支持的服务器不但可跨数据库系统平台,而且还可跨操作系统平台.可以说,图1和图2两种设计模式的优缺点是相互对应的.

3 数据库访问方式的`比较

基于程序的访问数据库的几种方法如下.

(1)专用的数据库访问工具.如Power Builder,Delphi等,它偏向于对数据库中数据的管理和显示,具有限的计算功能.既不适于用它来开发GIS应用系统,也难以将它们的数据操纵功能与现有的GIS应用系统紧密结合.

(2)嵌入数据库语言的常规语言.各数据库厂家为了让用户程序能直接访问自已的数据库,基本上都提供了专有的面向C语言的预编译头和静态库,如Sybase公司的OPEN CLIENT和ORACLE的PRO*C.

(3)开放数据库互连性应用编程接口(open database connectivity application programming interface,简称ODBCAPI)[2,3].它是微软(Microsoft)公司提出的数据库访问形式.它通过确保所有的应用系统遵循标准的调用层接口,提供对特定数据源命令进行解释的驱动程序来保持应用系统的互用性.这样的应用系统是开放的,只要有相应数据源的ODBC的驱动,它就无需改变代码而可访问相应的

数据库.

在确定访问数据库的方式时,ODBCAPI的开放性的优势是不言而喻的,但这种方式在效率上不如第二种访问形式.应说明的是:ODBC SQL语法分为3层,即最小层、核心层和扩展层,尽管目前的大型数据库都能支持到扩展层,但为了保证应用系统的开放性,在具体编程实现时,尽量只使用最小层和核心层的语法.

4 某电信局配线系统的实现

客户机为MAPGIS/ODBC/WINDOWS 95,服务器为SQL SERVER/WINDOWS NT,要访问的相关表中记录约为13万条.要求从地理底图上选中某一DP,在数据库中寻找出从这一DP到配线架的可用通路,并在数据库中作相应配线修改.如图3所示. 结果表明:(1)程序实现了MAPGIS访问网络数据库的功能;(2)客户机和服务器均为PC机(主频166MHz),每次操作反应时间为数秒,换机观察,发现服务器的性能是整个网络计算的瓶颈.

5 结论

(1)C/S模式为目前网络平台GIS的首选,将GIS功能与数据库访问分层实现有利于保护现有的开发成果;(2)将数据请求层放在客户端和以ODBC作为数据库的访问方式保证了应用系统的开放性,其访问可跨越数据系统和操作系统平台;(3)实例表明,应用系统的反应速度更多取决于服务器的性能,而不是ODBC的效率.

参考文献

1 www.esri.com/base/common/userconf/proc96/TO100/PAP094/P94A.HTM..4

2 www.microsoft.com/odbc/start.htm.1998.4

JSP数据库访问技术论文 篇3

如图1和图2所示是系统进行访问控制的两种情形[1]。在图1中,用户通过登录页面登录网站,如果该用户是已注册用户,系统会保存该用户的登录信息,并让用户进入其欲访问的页面。在图2中,用户直接访问网站的某个页面,系统会去查询是否保存有该用户的登录登录信息,如果有,则显示该页面的内容,如果没有,就转入登录页面,要求用户登录网站。

这个流程是容易理解的,问题在于,系统如何保存不同用户的登录信息呢?JSP为我们提供了一套会话跟踪机制,该机制可以维持每个用户的会话信息,也就是说,使用会话跟踪,可以为不同的用户保存不同的数据。

1 什么是会话

就Web开发来说,一个会话就是用户通过浏览器与服务器之间进行一次通话,它包含浏览器与服务器之间的多次请求、响应过程[2]。

如图3所示描述了浏览器与服务器的一次会话过程。当用户向服务器发出第一次请求时,服务器会为该用户创建唯一的会话,会话将一直延续到用户访问结束(浏览器关闭,本次会话结束)。

JSP提供了一个可以在多个请求之间持续有效的会话对象session,session对象允许用户存储和提取会话状态的信息。

2 JSP内置对象session

在JSP中,提供了一个内置对象session,session对象用来存储有关用户会话的所有信息。Session对象的常用方法如下:

1)void set Attribute(String key,Object value):以键-值对的方式,将一个对象的值存放到session中去。例如:set Attribute("name","admin"),就是把字符串admin存放到session中去,它对应的键是name。

2)Object get Attribute(String key):根据键去获取session中存放的对象的值。例如:String name=(String)session.get Attribute("name"),就是通过名称为name的键获取session中存放的对象的值。

在JSP中,访问控制就是基于session对象来完成的,接下来,举例说明使用JSP内置对象session实现访问控制。

3 举例

实现页面的登录功能,要求系统提供用户登录页面,所有用户必须登录之后,才能访问主页面。访问控制流程见图3所示。

根据系统的访问控制控制流程,至少要完成如下几个步骤:

1)创建数据库db,在其中创建表userinfo,负责存储用户名、密码。

2)创建类(User.java),负责存储登录用户的信息,如:用户名、密码。

3)创建登录页面(login.html)。

4)创建登录处理页面(login.jsp)。

5)在主页面中加入登录验证。

首先,在db数据库中创建表userinfo,表结构见表1所示。

接下来,创建类User.java,用来存储已登录的用户名和密码,代码实现如下:

然后编写登录页面,接下来的环节比较关键,要在登录页面中进行一系列的逻辑处理:首先查询数据库判断该用户是否已注册,接着在session中保存已登录用户的信息,其关键代码如下:

现在进行最后一步,在主页面中加入登录验证。此时要完成的任务是:从session中提取用户的信息,如果用户信息存在,显示首页内容;如果用户信息不存在,跳转到登录页面,关键代码如下:

到此为止,该系统的访问控制已经基本实现了。验证一下访问控制的效果具体步骤分为如下几步:

1)直接在浏览器地址栏中输入URL,访问系统首页面。

2)通过登录页面进入系统首页面。

3)重新开启一个浏览器窗口,直接访问系统首页面。

如果直接在浏览器栏中输入URL,访问系统首页面,那么系统会跳入登录页面,提示用户进行登录。如果通过登录页面进入系统首页面,那么只要是已注册用户,都可以正常进入。如果重新开启一个浏览器窗口,直接访问系统首页面,那么不管在其他窗口中是否登录,进入的肯定是登录页面。这是因为每个session对象都与浏览器一一对应,也就在于说,重新开启一个浏览器窗口,相当于重建一个session对象,在其他浏览器窗口保存的登录信息与新的浏览器窗口完全无关,所以系统会判断该用户尚未登录,必定跳转进入登录页面。

4 结束语

本文介绍了动态页面中常见的两种访问控制流程,以及使用session对象中的set Attribute和get Attribute两个方法实现动态网页中的访问控制问题,并通过实例详细描述了实现过程。

参考文献

[1]聂哲.JSP动态Web技术实例教程[M].北京:高等教育出版社,2009.

数据库访问技术的研究 篇4

随着计算机的产生和计算技术的不断发展, 以及科技的进步特别是信息产业的发展, 把我们带入一个全新的信息时代。为此, 人们需要收集、加工和处理大量的信息和数据, 数据库技术是随着数据和信息管理而产生的。在所有的数据库系统中, 关系型数据库是目前应用最为广泛的数据库之一。

由于不同数据库应用程序开发工具有不同的访问方式, 而且不同的数据供应商又提供了不同的接口, 致使用户在使用开发工具进行数据库应用程序开发时, 对不同的访问方式产生了迷惑和不解, 不知道哪一种访问方式的效率和效果最好。本文, 笔者探讨了常用数据库应用程序开发工具对不同数据库的访问方式。其中, 数据库应用程序开发工具以VB、ASP为例, 数据库以Access、SQL Server和Oracle为例。

VB和ASP都是微软提供的系统开发工具。VB是微软Visual Studio集成开发工具中的一个开发工具, 它既可以开发单机结构数据库应用程序, 又可以开发C/S结构的应用系统。VB使用DAO、RDO、ADO数据库访问方式。ASP也是微软提供的一个开发工具, 主要用于开发B/S结构的应用程序, ASP使用ADO数据库访问方式。下面, 笔者分别介绍一下以上3种方式对Access、SQL Server和Oracle的访问技术。

二、数据库访问对象DAO

数据库访问对象 (Data Access Object, 简称DAO) , 它是一组以数据库引擎 (The Jet Data Base Engine) 为核心而建立起来的动态连接库 (DLLS) 。DAO支持2种不同类型的数据库环境:利用Microsoft Jet Data Base Engine, 使得DAO成为访问本地ISAM数据库的最佳手段;利用ODBC Direct, 使得DAO在访问ODBC类型数据库时拥有最小的额外开销。

1. DAO可存取的数据库。

DAO可以存取本地DAO数据库, 即Microsoft Access和ODBC数据库, 包括SQL Server、Oracle、Sybase和任何提供ODBC驱动的客户机/服务器数据库, 以及Fox Pro、Lotus、文本文件等内容。

以上每个数据库源都提供了不同的安全等级。DAO的主要目的就是将程序员从每个数据库的细节中解脱出来而向他们提供统一的API接口。

2. DAO的基本对象。

DAO中有3个最基本的对象:DBEngine、Workspce和Data Base。

(1) DBEngine。DBEngine对象用于数据库引擎指定系数参数, DBEngine中的Default Type属性用于描述缺省的Workspace类型。如果其属性设置为db Use ODBC, 则使用ODBCDitect模式。Workspace对象作为一个打开的数据库的容器。

(2) Workspace。Workspace为打开的数据库提供安全的设备环境。在创建DBEngine的同时, 程序自动创建了一个缺省的Workspace对象, 用来指定访问数据库的用户名和口令。

(3) Database。Database对象封装了数据库存储器, 并且还定义了数据库的表格、关系、存储查询及打开记录等。

三、远程数据对象RDO

远程数据对象 (Remote Data Object, 简称RDO) 是位于ODBC API之上的一个对象模型层, 它依赖ODBC API、选定的ODBC驱动程序以及后端数据库引擎来实现大部分的功能。RDO具备基本的ODBC处理方法, 所以可以直接执行大多数ODBC API函数。RDO已包含在VB4.0/5.0企业版中, 由一个动态连接库MSRDO32.DLL来实现。

1. RDO数据库接口。

RDO面向客户机/服务器程序的特殊需求提供了一组对象以辅助这种程序的开发。与DAO提供的Jet数据库引擎接口不同, RDO提供的是一个直接与ODBC API连接的面向对象的抽象层。RDO使用ODBC API和数据库服务器驱动器创建到数据库服务器的链接, 创建查询和用于浏览结果设计集的游标, 并且依赖数据库服务器执行复杂的请求过程。它不像DAO那样, 利用Jet数据库引擎进行查询的预处理和连接管理, 而是直接与数据库服务器交互, 这使得RDO特别适用于客户机/服务器型应用程序的开发。

2. RDO的基本对象。

要想正确地使用RDO, 必须要对其对象模块结构加以理解。在RDO的对象和集合中, 有很多对数据库的状态和设定进行操作的属性, 以及对数据库进行操作的方法。RDO主要包括rdo Engine对象、rdo Environment对象和rdo Connection对象。

(1) rdo Engine对象。最初调用RDO对象以及RDC (远程数据控件) 时, 系统会自动生成rdo Engine对象的附带事件。rdo Engine用于对RDO全局属性的参数和选项进行设置, 是RDO的阶层结构内最上层的对象, 包含了其他所有的对象。

(2) rdo Environment对象。DAO对象在自动创建rdo Engine对象时, 生成rdo Enviroment对象的初始值并保存为rdo Enviroments (0) 。在一般情况下, 应用程序中不必追加rdo Environment对象, 大多数只需对已有的rdo Enviroments (0) 进行操作就可以了。只有在支持1个以上事务 (Transaction) 时, 需要将用户名和口令信息分别处理, 利用rdo Create Environment方法将特定的用户名和口令值做成新的rdo Environment对象。

(3) rdo Connection对象。rdo Connection对象用于同SQL Server的连接管理, 下面是与SQL Server连接的例子。

首先用New关键字声明一个rdo Connection对象, 由此生成独立的连接对象, 这时它还不是rdo Connection集合的成员。然后在具体连接到SQL Server数据库之前, 设定rdo Connection集合的属性。

四、Active X数据对象ADO

Active X数据对象 (Active X Data Object, 简称ADO) 。API是另一种用于开发访问OLE DB数据源应用程序的API。有很多种程序设计语言都支持ADO, 包括Visual Basic、Visual C++、VBScript、Visual J++和Active Server Page等。

1. OLE DB数据库接口。

OLE DB是COM模型的数据库接口。它是一系列的接口集合, 介绍了一种通用的数据访问方法。也就是说, OLE DB并不局限于ISAM、JET甚至关系数据源, 而是能够用于处理任何类型的数据。OLE DB向应用程序提供1个统一的数据访问方法, 而不考虑它们的格式和存储方法。ADO集合了DAO和RDO的优点, 而且它不像DAO和RDO那样严格遵循对象的层次关系。这就意味着ADO对象更容易创建和操纵, 因为它们都可以直接地创建和管理。ADO更适用于开发C/S和B/S结构的应用程序。图1说明了一个典型ADO应用程序的配置。

2. ADO的基本对象。

(1) Connection对象。一个Connection对象代表1个到指定数据源的成功连接, 应用程序通过链接访问数据源, 也可以直接访问数据源, 或者通过类似Microsoft Internet Information Server的中间层间接访问数据源。链接成功后, Connection以对象的形式存在。

(2) Command对象。Command对象是对数据源执行的一系列操作的定义。使用Command对象来查询数据库并返回数据集对象形式的查询结果。Command对象指定变量和参数来完成对数据的操作, 如添加记录、删除记录和更新纪录等。

数据库访问技术的探讨 篇5

在数据库应用系统的开发过程当中, 绝大多数的程序员在作数据库编程时, 都在使用ODBC (Open DataBase Connectivity, 开放式数据库连接) 数据源的方式访问数据库。在处理数据源的配置时, 常见有两种方法:

(1) 手工配置方法在应用系统使用说明书中让用户通过个人操作系统提供的ODBC数据源设置方法按步进行, 用确保配置的正确性, 常常需要终端用户有一定的数据库使用经验。这种方法对用户的要求较高, 不符合专业软件的要求;

(2) 程序代码ODBC配置程序员通过访问用户操作系统注册表, 新增、修改相关键值, 从代码角度进行配置。这种方法要编写复杂的更改操作系统注册表文件的程序, 对系统的稳定性提出更高的要求。

本文从ADO (ActiveX Data Objects) 数据访问技术入手, 介绍非ODBC (无需配置数据源) 方式下几种常用大型数据库连接方法。当然需要注意的是并非访问数据库时不需数据源, 否则就无法进行数据库的注册与联接。

二、ADO (ActiveX Data Objects) 数据访问技术

ADO是微软公司提供的最新数据库访问技术。与新的数据访问层OLE DB Provider协同工作, 提供通用数据访问UDA (U-niversal Data Access) 能力。OLE DB是一个底层的数据访问接口, 可以访问多种数据源, 既包括传统的关系型数据库、电子邮件系统等, 又支持自定义的商业对象。ADO提供了一个熟悉的、高层的对OLE DB的Automation封装接口。对那些熟悉RDO的程序员来说, 可以把OLE DB看作ODBC驱动程序, 如同RDO对象是ODBC驱动程序接口一样, ADO对象是OLE DB的接口。根据不同的数据库系统需要各自的ODBC驱动程序, 不同的数据源也要求各自OLE DB提供者 (OLE DB Provider) 。OLE DB是一种较新的技术, 因此提供者相对较少, 但微软正积极推广该技术, 并计划用OLE DB取代ODBC。RDO今后将被以ActiveX技术为基础的ADO所替代。ADO是基于OLE DB之上的技术, 它通过内部的属性和方法提供统一的数据库访问接口。ADO的优点主要如下:

ADO具有高度的灵活性, 它可以使用相同的编程模式连接到不同的数据提供者, 而不管给定提供者的特定特性。

较低的内存占用率。

具有远程数据服务 (RDS) 功能, 通过RDS可以在一次往返过程中将数据从服务器移动到客户端应用程序或Web页, 并在客户端对数据进行处理后将更新结果返回服务器。同传统的数据对象层次 (DAO和RDO) 不同, ADO可以独立创建。可以只创建一个"Connection"对象, 然后由多个独立的"RecordSet"对象来使用它。

ODBC本身是以SQL Server、Oracle等关系数据库作为访问对象, 而OLEDB则不仅限于此, 它还可以对电子邮件、文本文件、复合文件、数据表等各种各样的数据通过统一的接口进行存取。

ADO的连接方式主要可分为OLE DB Provider方式与OLE DB Provider for ODBC方式。前者是微软公司正在大力推广的方式。比后者ODBC方式要快且所需资源更少。

三、ADO方式下数据库的联接字符串的定义形式如下:

(1) Provider

字符串表达式, 指定OLE DB数据或服务提供者的名称, 可以缺省。一般有三种提供者:数据提供者、服务提供者和服务组件。

(2) Driver

字符串表达式, 表示ODBC驱动程序的名称, 并不是ODBC驱动程序动态链接库 (DLL) 的文件名。有些驱动程序是微软公司的产品, 在安装操作系统时就已经安装好了;而有些数据库产品的驱动程序由开发数据库产品的软件公司随数据库产品一起提供, 需要在安装数据库时选择安装后, 才可以使用。如:Sybase数据库驱动程序等。

(3) Server (SRVR)

字符串表达式, 数据库服务名称。

(4) Database (DB)

字符串表达式, 指定服务器上的数据库名称。即使DSN定义已经指定了数据库, 也可以在DSN之外指定Database参数以便连接到不同的数据库。

(5) DSN (Data Source)

字符串表达式, 在此为空, 无须指定连接的ODBC数据源的名称。

(6) UID (User ID)

字符串表达式, 为ODBC数据源指定用户标识 (用户账号名) , 指定用户必须有足够的权限。

(7) PWD (Password)

字符串表达式, 为ODBC数据源指定用户口令, 必须有足够的权限。

(8) Persist Security Info

布尔类型, 为True时, 表明采用集成安全机制;若为False, 则表明不采用集成安全机制。无DSN (非DSN) 连接除了ADO所定义的参数外, 提供者不支持任何特定连接参数, 它将把任何非ADO连接参数传递给ODBC驱动程序管理器。下面介绍几种常见数据库的处理方法。

四、结论

ADO数据访问形式逐渐成为当前主流的数据库访问技术。随着这项技术的深入应用, 数据库应用系统用户操作更加便捷, 对数据库软件技术的发展产生更加深远的影响。

摘要:在数据库应用系统开发中, 采用ODBC的数据库访问形式已成惯例, 但这种方式存在的缺点不可忽视, 一则是应用系统用户必须通过手动进行ODBC数据源设置, 另则要通过烦琐的注册表程序进行更新, 极大增加了代码长度, 同时又影响系统稳定性。本文从ADO形式数据访问技术的角度, 探讨非ODBC标准方式下的数据库访问技术

关键词:ADO数据访问技术,OLEDB,ODBC数据源

参考文献

[1].林永张乐强Visual Basic6.0用户编程手册北京:人民邮电出版社2002.1

[2].邓文渊陈惠贞ASP与网络数据库技术北京:中国铁道出版社2003.5

上一篇:控制系统应用下一篇:新闻模式