服务器

位置:IT落伍者 >> 服务器 >> 浏览文章

DELPHI基础教程:Delphi客户服务器应用开发(一)[2]


发布日期:2021年05月26日
 
DELPHI基础教程:Delphi客户服务器应用开发(一)[2]

关系数据库体系结构与客户/服务器模式

关系数据库概述

关系数据库被定义为一种特殊的数据库其中各个文件(称作关系)以平面文件(FlatFiles)或表的形式保持数据表必须只含有一种记录类型每个记录具有固定数目的字段所有字段皆显示命名表内的字段内容是各不相同的不允许重复组(repeating groups)不含有复制记录和预定的记录序列

在构造关系数据库时必须特别注意关系的内容以及记录的各属性(字段)之间的内在联系

关系数据库上的基本操作有选择投影连接和除法选择建立一个含有与原始关系相同列数的新表但是行只包括那些满足某些特写标准的原始关系行投影操作指定将被选择的列因而形成的表只含有原始表列的一个子集如果在投影操作删除的列中有两个行不同那么将只有一个记录被转入新的关系连接操作从两个或多个表中组合信息两个表中的公用字段用作组合记录的基础字段在公用字段中具有相等值的记录被连接在结果关系内

关系数据库实现的任务

实现关系数据库所涉及的任务分为三组

● 为DBMS定义数据库结构的任务

● 将数据库分配给物理存储介质的任务

● 建立数据库数据的任务

执行这些任务的方法取决于所采用的DBMS产品

各种不同的DBMS产品提供定义数据库结构的实用程序这些实用程序使用一种专用的数据定义语言(DDL)某些DBMS产品含有一些规定一旦数据库已被定义到DBMS即将该数据库分配到物理介质根据应用程序处理的特点数据可以定位在指定表上或定位在同一磁盘上它有些DBMS产品偏重于数据库数据的建立

如上所述数据库定义存储分配以及数据建立过程都将取决于应用需求和所选择的特定DBMS产品的特征

关系数据操作

为了开发数据库应用需要使用一种语言来表达处理逻辑关系数据操作语言共有四类

● 关系代数它是一种语言提供一组远算符处理关系数据库中的关系

● 关系演算它是一种语言在该语言中用户指定一组来自关系数据库内数据操作的结果

● 面向变换的语言它们构成一类非过程语言这类语言将表示为关系的输入数据变换成表示为单个关系的结果SQL就是一种面向变换的语言

● 面向图形的系统它们为用户提供一个关系结构的图形如Borland的Paradox 和IBM公司的QBE(Query By Example)

用户可以采用多种方法与关系数据库进行联系

● 某些DBMS产品包括有生成表格的工具并提供表格和报告的处理

● 通过查询语言提供一个接口它们执行查询和更新功能最重要的查询语言是SQL

● 与关系数据库联系的第三种方法是通过应用程序

扩展关系系统

众多的销售商都在积极扩展关系模型这些扩展包括在关系表中存储复杂数据类型存储过程触发器以及二进制大对象(BLOB)目前正在SQL 标准中考虑的SQL扩展将包括对对象的进一步支持还有可能包括对用户定义数据类型及嵌套表的支持向关系模型提供对象扩展的产品包括SybaseInformixOracle和Borland

SQL:集成客户/服务器体系结构的基本链路

SQL为前面讨论的集成客户/服务器体系结构提供一条基本链路目前美国国家标准局(ANSI)已认可SQL作为操作数据库的正式工业标准它是许多数据库管理系统(DBMS)产品都采用的数据存取语言

SQL允许用户在关系表数据上进行查询建立新表存取现有的远程表操作数据建立应用程序存取SQL数据运行SQL语句处理错误以及访问多个服务器SQL数据库服务器是多用户关系数据库管理系统(DBMS)

SQL可以作为一个查询语言用于交互式使用或嵌入在应用程序中在执行查询时SQL接受一个或多个关系作为输入并产生一个关系作为输出结果是一个表或平面文件例如一批不含有重复组的同一类型记录在查询多个表时SQL将这些表连接起来SQL内还含有一些规定用来向表中插入新数据从表中删除数据或修改表中的数据

各种数据库服务器功能介绍

服务器数据管理包括若干软件它们使用户可以访问网络中的任何节点以及确保多用户环境下的保密性可恢复性和完整性如前面所提到的客户/服务器计算中的基本存取链路是SQL它是一种高级非过程数据库语言 现在已开发出很多支持SQL 的后端服务器及DBMS下面将描述这些产品

DB

DB是一种由IBM公司开发的RDBMS它使用SQL执行所有的数据库操作数据定义数据存取数据操作以及授权功能SQL语句由用户在一个客户机节点从键盘输入或嵌套在应用程序中

DB的结构包括表视图表空间索引索引空间数据库和存储组 这种RDBMS提供有允许用户动态建立和修改这些结构的工具DB还包括一些并行处理软件以控制和限制干预后备和恢复功能以及安全性保证等

并行处理通过锁来完成当应用程序读数据库数据时DB在该数据上获取一个共享锁允许其他应用程序读这个相同的数据如果一个应用程序需要修改数据那么DB将一个互斥型锁放在该数据上以阻止其它应用程序访问这个数据DB还提供一些关于锁的级别或锁的大小的任选项

DB周期性地存储并检查所有数据库变化所有驻留在系统缓沖区中的变化被写到数据库并将一个变化的记录载入日志以最近一次写到日志的变化起所建立的全部映像可用于完成系统故障的恢复DB包括一些用来从备份拷贝重新建立数据库的实用程序这种实用程序含有一个选择项允许用户只拷贝表空间中那些自最后一个备份后新被修改的页面

DB还含有一些用来保护数据库的安全性规定

Borland对象成分体系结构(BOCA)

BOCA建立了一个既考虑开发工具又考虑数据库管理工具的客户/服务器体系结构它将一级面向对象的工具中间件和数据库服务器技术集中在一起提供客户/服务器的解决方案该体系结构的组成部分有

先进的面向对象工具

Borland建立有广泛基础和紧密集成的面向对象的工具这些工具充分利用了当前客户/ 服务器变革的优点使用面向对象的方法学建立了如下产品Borland C++Borland DelphiParadoxQuattroProVisual dBase以及ObjectVision等

IDAPI

IDAPI(集成数据库应用程序设计接口)是Borland公司的SQL连通性解决方法 IDAPI使得开发人员能够以更高的效率建立数据库应用允许用户在多种硬件和操作系统平台以及网络环境下访问以多种数据库格式存储的数据

InterBase

InterBase是一种分布式SQL数据库服务器它支持每个数据库系统查询数据并将信息返回到其它任何一个InterBase服务器InterBase 的可变体系结构代表了关系系统技术的第三次浪潮可变引擎使得InterBase可以以最少的锁支持高效事务处理和决策支持事务处理

Borland公司的面向对象技术使得开发人员可以通过构造模块化的应用成分来建立复杂客户/服务器系统这些模块化应用成分可以很容易地开发测试维护和增强并可方便地装配到复杂的应用程序包中此外Borland公司的可视化技术极大地提高了软件生产率

Informix SQL服务器系列

Informix公司推出了多种产品来满足特定的客户/服务器需求 它们包括InformixOnLineInformix TP/XAInformix Star Informix OnLine/Optical和Informix OnLine工作站版

InformixOnLine是一个联机事务处理(OLTP)数据库服务器具有可用性数据完整性以及多媒体数据管理能力它建立有效的数据存储方法进行快速数据存取缓沖数据于内存最低限度地使用磁盘存取利用多处理器特征允许不同处理器同时存取以及自动确定是有效的搜索策略等从而获得极高的性能

InformixTP/XA将OnLine连接到事务处理管理程序支持那些涉及多个数据库以及多个DBMS(由不同的销售商提供)的事务处理在众多RDBMS中Informix 第一个向依从于X/Open XA的事务处理管理程序提供了这种基于标准的接口

InformixSTAR是一种用于OnLine的分布式客户/服务器数据库产品它提供最佳的性能并且具有最小的网络通信量站点透明性以及在不同站点操作数据库的高度可靠性

InformixOnLine/Optical是一种针对OnLine用户的附加产品这些用户想在他们的数据库系统上使用具有大容量存储能力的光学设备On_Line/Optical允许用户在写一次读多次(WORM)的光学子系统上存储BLOB用户必须拥有OnLine/Optical OnLine和一个光学子系统那当然如果没有这个OnLine/Optical产品用户仍可以使用On LIne在磁存储设备上操作BLOB

InformixOnLine工作站版是OnLine管理员手册的图形化版本该工作站版具有与硬件版本相同的技术内容但它是构造在一个窗口化点一揿式(PointandClick)图形接口采用关键字交叉查阅这使得用户可以在某一窗口中存取所需信息的同时在另一窗口中配置监视或调节OnLine

[] [] []

               

上一篇:DELPHI基础教程:Delphi客户服务器应用开发(一)[3]

下一篇:服务器响应HTTP的类型ContentType大全