首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT
新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平
驾驶员 | 网络编辑
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
您现在的位置: 考试吧(Exam8.com) > 计算机等级考试 > 计算机二级 > Delphi > 复习资料 > 正文

2011计算机等考Delphi:Delphi客户服务器应用开发

来源:考试吧Exam8.com) 2010-10-30 9:05:16 考试吧:中国教育培训第一门户 模拟考场
本章中我们将阐述客户服务器体系结构原理、如何用Delphi构建客户/服务器的环境和Delphi存取远程SQL服务器的编程和注意事项。

  18.1.4 IDAPI结构原理

  IDAPI(集成数据库应用程序设计接口)是Borland公司解决客户/服务器连通性的方案。也是Delphi 客户/服务器开发的重要组成部分。为了说清楚什么是IDAPI,让我们先来讨论一下普通数据库的接口问题。

  每个数据库管理系统和数据库应用都需一定的方式来访问内容所采用的数据格式,连接二者的部分称为接口,其最简单的情况就是对文件的直接访问,也可复杂到由几个层次组成。

  当今,面向用户的数据库通常都直接与其数据打交道,对那些有一定的用户和使用了一定时间的产品尤其如此。制造商总是认为自己的产品就是标准,而不关心对其它数据格式的访问。同样,许多纵向数据库应用用类似C的语言开发,多是直接访问其数据库。对开发者,这样做会变得容易些,但用户的情况往往是多变的。他对底层数据格式的选择并不一定与产品一致。其实在ODBC和IDAPI等尚未推出的前20年里,工业界已经认识到,一个DBMS不只是要访问其自身的数据格式。

  广义地讲,数据库接口可分为以下两类:

  ● 本地型(Local)

  ● 客户/服务器型(Client/Server)

  18.1.4.1 本地型数据库接口

  本地型数据库是伴随微机的产生而产生的。dBASEII作为最早的并仍在使用的系统之一就是典型的本地型数据库。

  本地型数据库管理系统的数据存放在一个本地硬盘上。DBMS接受来自用户或用户程序的命令。这些命令通常是系统特有的数据库管理语言。命令被转换为简单的磁盘访问命令,并交付文件系统来处理。然后DBMS接收来自磁盘上的数据,并加以处理。

  在本地型DBMS应用中,数据库引擎(DBE)运行于工作站上。图18.2暗示数据是存放在工作站的局部驱动器上,其实在网络中,数据还可存放在文件服务器上。这里数据库引擎使用典型的文件I/O调用和记录封锁技术来直接读写数据。

  存放数据的文件位于网络中的某个服务器上时,DBMS的行力与单机情况无异。 网络操作系统负责对服务器的管理,因此对DBMS而言,对服务器的使用就象使用局部的驱动器一样。

  当用户发出命令,请求DBMS读取数据库中的数据时,该请求首先由工作站(客户)的网络驱动程序处理,它负责把请求从网络上传到所需的服务器网络文件系统。服务器操作系统从适当的磁盘卷上找到数据,并发回等待中的工作站驱动程序。最后,数据回传给DBMS,这样DBMS使用这些数据就象使用本地存储的数据一样。网络情况下的接口比单机情况下接口的处理增加了通信开销,正常情况下这种额外开销不会影响用户的响应时间,除非在网络通信的高峰期间或DBMS要求大数据量传递。

  对于本地型DBMS其大部分工作都在工作站一侧完成,即使数据存储在文件服务器上,其对数据的处理仍然要在工作站上进行。这种方式的最主要的一个缺点是无论查询需要多么少的数据,都需要首先将查询中的所有数据通过网络传到工作站,然后由工作站负责选出满足查询条件的数据,不难想象,当几个用户同时操作数据库时,数据库网络的带宽会很快阻塞。

  在这一方式下,工作站不仅要负责所有用户界面管理,还要负责所有数据处理的工作。在当今的数据库应用中,尤其是那些功能强且使用简便的系统,用户界面的处理开销是相当大的,象Windows这样的图形环境,处理上的额处开销会更大。为此而升级工作站是很得不偿失的。

  18.1.4.2 客户/服务器型数据接口

  由于服务器硬件技术逐年迅速地提高,数据库在处理模式上在近五年内发生了改变。本地型DBMS逐渐让位给客户/服务器型DBMS,尤其是在大中型企业中更是这样。

  正如名字所暗示的,客户/服务器是将处理工作分散到工作站和服务器上去处理,服务器不仅负责存取数据,还要对数据作一定的处理工作,这样在数据发送给工作站之前即求得查询结果集,从而在大部分情况下可大大减少网络传输的开销,因此,也减轻了工作处理负担,从而只需关心用户界面的处理工作即可。

  服务器处理数据带来的另一个好处是,当服务器中数据库引擎使用了缓冲机制时,多个工作站可以从中受益。例如,一用户查询了某数据,当另一用户要查询同样的数据时,即可从服务器缓冲中直接得到结果,从而免去很多开销。

  客户/服务器系统的成功与否在很大程度上依赖于服务器硬件质量和容量。用户越多,服务器的处理负担越重,相应服务器硬件性能也要跟得上,否则就会导致响应时间比本地型数据库还要差的结果。

  处理工作,而工作站负责用户界面处理工作

  客户和服务器间的数据库接口要比本地型系统复杂得多。它有几个转换级负责命令和结果集在工作站和服务器间的传送。图18.5给出了客户/服务器数据库接口的详细情况。

  客户/服务器的前端应用程序实际上不直接与数据库引擎打交道。每个客户服务器提供一个数据库通信接口,该数据库通信接口运行于前端。这些接口也称为数据库通信API等。数据库通信接口的工作流程如下:

  ① 前端应用程序发送命令给数据库通信接口。

  ② 接口通过网络把命令传给数据库引擎。

  ③ 数据库引擎在服务时上做查询或更新操作之类的工作,通过网络文件系统访问物理数据。

  ④ 数据库引擎将结果返送给工作站上的通信接口。

  ⑤ 前端从接口上接到结果后,显示或按用户要求做其它处理。

  客户/服务器型比本地型DBMS更接近ODBC的原理。因为由前端向数据库的命令发送和由数据库向前端结果的返回都是透明的,并不需知道具体传送方式如何,各系统存在差别地方是:客户/服务器系统在管理工作站和服务器间通信的方式不同,彼此会不兼容。此外,对于本地型DBMS缺乏读取不同类型数据源的能力的问题。这些问题在IDAPI中得到了有效解决。

  18.1.4.3 Borland Delphi 的解决方案

  IDAPI是通过BDE(Borland Database Engine)和SQL Links,来解决本地型数据库接口和客户/服务器型数据库接口的兼容问题的,见图13.1。

  Delphi 的数据库特性使你能很容易构造数据库应用程序。这些应用程序能访问Visual dBASE、Paradox、Local InterBase Server for Windows等本地数据库和Oracle、Sybase、Informix、SQL Server和Remote InterBase Server等客户/服务器数据库。

  BDE是Borland公司支持Delphi 2.0 Client/Server Suite、Paradox for Windows、Visual dBASE for Windows等产品的核心数据库引擎和互连软件。BDE 提供了丰富和强壮的特性支持客户/服务器应用的开发。

  提供支持多种数据库如dBASE、Paradox、Text、InterBase、Oracle、Sybase和Microsoft SQL Server以及任何ODBC数据源的统一和一致的应用程序编程接口(API)。开发者能不用修改数据库应用就能访问不同的数据库站点和数据库格式:

  ● BDE是用于开发客户/服务器数据库应用的理想工具,数据库应用程序既可访问本地数据库又可访问远程数据库

  ● 允许数据库用直接和灵活地访问数据源

  ● BDE对于Paradox和dBASE文件格式来是高性能的数据库引擎

  ● 支持使用ISAM(Indextd Sequential Access Method)SQL和QBE访问数据

  ● BDE是数据集成化引擎,提高跨不同数据库的共享服务。支持不同数据库格式的相互转化,如dBASE和Oracle表、从InterBase到Paradox拷贝数据甚至建立InterBase 和Oracle表之间的一对多关系

  ● BDE查询引擎为SQL,QBE和面向集合访问提供一致性的查询语言。支持用户定义和访问基本SQL的服务器和基于文件数据库的能力

  ● BDE支持全32位功能,如多线程,抢占式多进程,长文件名和UNC,用户可在后台执行多个查询,多个数据库应用可访问同一个数据库文件

  BDE的体系结构是基于数据库驱动程序的,它提供了各种共享服务:

  ● 缓冲区管理(Buffer Manager)

  ● 排序引擎

  ● OS服务

  ● 内存管理

  ● BLOB快速存取

  ● SQL查询引擎

  ● SQL产生器

  ● 数据库重构

  ● 表的批处理

  ● 数据转换服务

  ● 连接服务

  ● 内存数据库服务

  ● SQL驱动程序服务

  ● 系统管理

  ● 语言管理

  Paradox、dBASE和文本数据库BDE包含的数据库驱动程序支持对标准数据源的一致性访问。用户可以增加ODBC驱动和Borland SQL Links产品以支持对SQL 服务器的数据访问,如InterBase Oracle和Sybase等。此外BDE给予Windows 95和Windows NT应用开发者以直接、独立共享的对多种数据源的高级访问。

  BDE在设计上是面向对象的。在运行时,数据库应用通过建立各种类型的BDE 对象与BDE交互,这些运行的对象用于操作数据库实体如数据库表、查询。BDE的扩展的API支持C、C++、Delphi等对数据库引擎的访问。

  在Delphi应用程序中访问数据库是通过调BDE的API函数。Delphi在库单元BDE中提供了大约三十多个API函数和各种BDE消息和结构。由于Delphi应用程序的开发是基于部件的,有关BDE API的调用都嵌入了Delphi可视部件类库,因此,建立数据库应用时可以不必管BDE API的细节。只要正确安装IDAPI的Drivers,并进行正确的配置,就能使你的数据库应用程序与服务器连接并访问数据库。当然为了提高应用程序的数据库访问性能, 可以在程序中直接调用BDE API函数。

  Borland的IDAPI包含对ODBC的支持,因此通过BDE,你的应用程序能访问一切与ODBC兼容的数据库如Access和Btrieve。

  Local InterBase Server提供了一个单用户多实例的SQL服务器平台,特别是在将数据库应用程序转移到对Oracle、Sybase和Informix等远程数据库的访问之前,可以在Local InterBase Server平台建立和测试数据库应用程序。

  对客户/服务器型的数据库应用程序来说,SQL Links在Delphi数据库体系结构中起着至关重要的作用。

  Borland SQL Links支持访问局部(Paradox dBASE)和远程SQL数据库的BDE应用程序。为了访问特定的远程SQL服务器必须在客户端安装相应的SQL Links驱动程序。安装了SQL Links驱动程序后,SQL表达式才能被传送给相应的服务器执行。

  一旦你安装了SQL Links的驱动程序并建立SQL驱动程序的Alias,你就能采用下列方法使数据库应用程序象访问本地Paradox和dBASE数据库一样访问远程数据库:

  ● 通过应用程序用户接口(界面)

  ● 通过包含嵌入SQL表达式的应用程序

  ● 直接将SQL表达式传送给服务器

  BDE也支持应用程序使用SQL访问局部数源,

  安装了SQL Links驱动程序,你能用SQL访问数据。驱动程序负责SQL服务器的链接,将查询语句转换成兼容的SQL语句并将它们传送给SQL数据库。等处理完成后,SQL数据库把结果以应

  ⑴ BDE客户查询SQL数据库;

  ⑵ SQL Links驱动程序建立客户工作站与SQL Server的链接,并将查询发送给SQL

  服务器;

  ⑶ SQL服务器进行SQL表达式的错误和语法检查,处理查询并将结果返回给BDE

  客户;

  ⑷ SQL Links驱动程序将结果通过SQL转换成客户端能识别的形式,客户端将其进

  行格式化并将数据显示给用户。

  在应用程序中使用SQL Links驱动程序对使用SQL的数据库具有如下好处:

  ● 直接查询SQL服务器的能力

  ● 支持SQL网络的传输

  ● 增强了记录的快速存取

  ● 数据锁定

  ● 在SQL结果集和数据库表的双向变换

  ● 使用索引给数据排序

  ● 为数据库当前Session建立书签,并可在以后重用书签

  ● 通过动态访问数据源来动态处理SQL数据

  18.2 Delphi客户/服务器应用开发环境的构造

  18.2.1 Borland SQL Links 的安装

  SQL Links的安装过程如下:

  ⑴ 在客户端工作站上将SQL Links1号磁盘插入软盘驱动器.A:或B。

  ⑵ 在Windows 95的资源管理器中,选择运行A:\INSTALL( 或B:\INSTALL),并显示打开对话框。

  ⑶ 选择Continue 或按Enter。INSTALL 检测工作站上是否已安装了BDE 的动态链接库IDAPI01.DLL 。如果需要它将显示一个对话框,以让你描述该文件所在位置。当定位IDAPI01.DLL后,INSTALL显示Borland SQL Links目录对话框,描述你想安装的SQL Links驱动程序。

  当你完成这些工作,选择Continue或按Enter.INSTALL显示IDAPI配置定位框。

  ⑷ 描述你想安装的IDAPI配置文件的升级版的位置。当你完成这些工作后,选择Continue或按Enter。在继续安装之前按照你所选择的驱动程序。安装程序将需要更多的信息,后面的章节中将叙述这些信息。

  ⑸ 一旦你提供了所有的必要信息,安装开始当安装结束后,你能选择察看SQL Links自述文件——READLINK.TXT。阅读这个文件将找到最新的信息。

  18.2.2 配置SQL环境

  与你的BDE应用程序一起安装的有BDE配置工具(BDECFG32.EXE),该工具帮助用户修改他们的应用程序配置。配置参数被存于命名为IDAPI32.CFG的二进制文件中。当应用程序启动时,将读这个文件。通常该文件在应用安装过程中被置于BDE文件目录中(C:\Program Files\Common\BDE)。

  本节描述怎样使用BDE配置工具设置应用程序的SQL环境。一旦配置好BDE应用环境,就可开始联接网络,并访问SQL服务器。

  关于怎样使用BDE配置工具的详细介绍,可参见BDE用户指南或按运行BDE配置工具选择Help按钮显示在线帮助。

  在开始配置SQL环境前,必须已完成以下工作:

  ● 已安装SQL Links软件

  ● 退出所有其它Borland应用程序

  ● 在Windows 95中打开应用程序组Borland Delphi 2.0

  ● 选择IDAPI配置工具图标,出现配置工作窗口后进入驱动程序管理页

  18.2.2.1 配置SQL Link驱动程序缺省设置的方法

  SQL Link驱动程序缺省设置是指在BDE配置工具的Drivers页中的参数设置,这些参数在建立新的Alias中使用。Alias是描述网络资源的一组参数的集合。BDE应用使用Alias 联接共享数据库。Alias对于访问局部数据库并不是必要的,但要访问SQL数据库,却是必不可少。

  SQL Links驱动程序的缺省设置,是你建立新的Alias 的原型。尽管你在建立Alias后能定制它,但在建立新的Alias前设置相应的缺省设置要来的容易。因为这样建立的每一个Alias将继承这些设置。

  要描述驱动程序的缺省设置,要完成以下几项:

  ● 将亮条移到驱动程序的入口,驱动程序管理程序显示所有的该驱动程序的配置参数,在参数列表表端可用滚行杠检察各配置参数

  ● 如果需要编辑驱动程序的缺省配置参数,如果光标停在这格, 配置工作将自动套用缺省参数

  ● 当完成这些工作,选择File|Save,修改将在应用程序下一次启动时生效

上一页  1 2 3 4 5 6 7 8 9 下一页
  相关推荐:2010年9月计算机等级考试试题及答案解析专题
       预告:名师解析2010年9月计算机等级考试试题答案
       2010年9月计算机等级考试成绩查询时间及入口
       2010年9月计算机等考成绩查询短信免费提醒开通
文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。