|
3.2.2 Client/Server体系结构的优缺点 我们看到,客户/服务器体系结构有以下优点: l 应用逻辑与数据实现分离,实现了在网络上的负载均衡; l 充分利用了网络服务器的处理能力。客户中需将请求送数据库服务器,数据查询工作由服务器
来承担,服务器的能力可以得到充分的发挥。 但是它也有以下一些缺点: l 由于计算机技术的快速进步和企业需求变化的加快,企业面临的硬件、网络操作系统、数据库
系统、开发工具、应用系统的升级周期越来越短,因此“维护”客户服务器的费用就变得越来越
高昂。 l 快速升级的硬件、网络操作系统、数据库系统、开发工具使企业的技术人员失去了方向:不断
地消化新技术,却无瑕顾及企业要解决的问题 l 在客户端,必须安装操作系统(一般为Windows95/NT)、网络软件、特定的中间件(Sybasse
Net-Library)以及应用软件系统才能工作,因此应用系统的安装、升级和维护通常需要专业人员
才能用胜任,且必须各站点逐个安装,从而使客户端的维护费用变得也很高昂。对主机系统来说
,这一点要优越的多,只需要在主机上安装一次即可。 3.2.3 PowerBuilder是客户/服务器体系结构下客户端的开发工具 前面已提到,PowerBuilder是客户/服务器体系结构下开发客户程序用的开发工具,用
PowerBuilder开发出的程序可以存取数据库中的数据。下图表示了PowerBuilder与数据库配合工
作的方式。
我们看到,PowerBuilder作为客户端的应用开发工具,主要完成的是表示逻辑方面的工作,例如
,菜单、录入界面。而数据库服务器管理的是事务逻辑和数据存取方面的工作。因此,
PowerBuilder开发工作应分为两部分,一部分是前台表示逻辑方面的工作,另一部分是数据库后
台方面的设计工作(如数据库触发器、存储过程和视图等的设计)。一个好的应用系统,前台开
发与后设计应是有机结合、合理分布的;良好的后台设计可以降低前台的开工作量,提高系统的
运行效率。 §3.3 PowerBuilder6.5数据库编程 PowerBuilder与数据库的关系是“配合”与“协调”的关系。PowerBuilder完成数据请求、数据
表现、菜单、界面等表象方面的工作,而数据库服务器完成数据库数据的存储管理、安全管理、
并发控制、事务管理、完整性维护、查询优化等工作。 PowerBuilder在操作数据库时与以下几方面有关: 1、在数据库画笔中定义数据库表和视图 l 定义表的结构 l 表中列的扩展属性 ² 定义表中列的显示风格 ² 定义表中列的编辑屏蔽 ² 定义表中列的校验 l 定义表的主键 l 定义表的外部键 l 定义表的索引 PowerBuilder有五个系统表,这五个系统表是PowerBuilder初次连接到数据库时系统自动建立的
。下表给出了这个系统表的表名和它们的作用 PowerBuilder系统表 用途 PBCATTBL 存放表或视图,表或视图中列的缺省字体。 PBCATCOL 存放列用到的显示风格名、校验规则名和编辑风格名;列的标题、列的标签、字体的大
小写,字体的对齐方式。 PBCATFMT 列的显示风格定义。 PBCATVLD 列的校验规则定义。 PBCATEDT 列的编辑风格定义。 表3-1 PowerBuilder系统表 2、在数据库画笔中在图形方式下操作数据库 这些操作包括: l 插入记录 l 修改记录 l 删除记录 l 查询记录 l 把查询出的记录存入文件 l 把表或视图的定义转变成建表的SQL语名 这些功能是给开发人员和管理人员提供的。 3、在数据库画笔中用SQL语句执行平台管理操作数据库 l 生成数据库 l 管理数据库 l 维护数据 在这里创建的表和规则不会记录在PowerBuilder系统表中 4、在查询画笔中定义查询对象 如果一个查询动作要多次使用,还可以用PowerBuilder的查询画表生成查询对象这个查询对象不
能由数据库画表调用,它只能由查询画表本身调用执行。在建立数据窗口时,数据源也可以做在
查询对象之上。 事实上,查询对象就是写好了的SQL语句,它存在PowerBuilder的pbl文件中,在使用的时候调用
即可。 5、用数据管道在不同数据库之间转换数据 数据管道允许把一个数据库的数据(一个或多个表中的全部或部分行)转入到 另一个数据库的一个表中(这个表可以存在或不存在),从而可以使数据在不同数据库之间相互
复制。 6、用数据窗口操作数据库 Datawindow是PowerBuilder操作数据库的重要的手段,通过数据窗口可以查 修改、插入和删除数据库的数据。PowerBuilder数据窗口操作数据库的能力非常强,是
PowerBuilder的精华所在。 l 数据窗口的数据源可以是: ² 表或视图 ² 多表连接 ² 查询对象 ² 外部数据源 ² 存储过程 l 数据窗口列数据的显示风格 l 数据窗口列的编辑屏蔽 l 数据窗口列的校验 7、PowerScript直接调用SQL语句操作数据库 PowerBuilder对数据库的操作即可以通过数据窗口完成(本质上是数据窗口屏幕上对数据库的操作
转化成SQL语句),又可以在PowerScript语言中直接调用SQL或存储过程(本质上仍是SQL语句)完成
。详细操作在第*个章节已经介绍。
第四章 局域网图书资料查询系统设计分析 根据数据库系统生存期的设计方法,从数据库应用系统和开发的全过程来考虑,将数据库应用系
统设计分为以下几个阶段(见图4-1) 1)规划; 2)需求分析; 3)概念设计; 4)逻辑设计 5)物理设计
§4.1 应用需求分析 要设计一个良好的局域网图书资料查询系统,就必须首先明确该应用环境对系统的要求。局域网
图书资料查询系统的应用背景为:一个数十人的科研或开发小组,搜集了上千册有用的图书资料
,其中有一部分分布在个人手中,为了方便大家查阅,需要对每本书的状态进行跟踪,另新进和
丢失的图书资料必须得到及时的反映。因此,该系统需满足以下几方面需求: l 用户的管理:必须具有使用权限的用户才能成功登录到系统中来。所谓用户权限在这里并不要
求有功能上具体的划分,集中实行松散管理,这建立在用户高度自觉的基础上。所以,在这里只
需给每个需要使用系统的人一个用户名和密码,即可登录系统进行各种操作。新的用户需要取得
管理员的许可将其加入系统,加入系统的用户可以对自己的用户密码进行修改。 l 查询功能:系统需要提供几种不同方式的查询手段,以实现灵活方便地管理整个系统。 ² 图书分类查询:一本图书包括书名、出版社、作者、保管人等多个信息,这就要求系统能按照
不同的信息类别对图书进行查询。比如说,按书名查询、按作者查询等。选定需要的查询信息类
别,再输入想查询的内容即可查询到相关的图书信息。 ² 多条件查询:很多时候,用户需要了解的信息不仅仅局限于一个条件,比方说想同时查询书名
为“数据库原理”但出版社仅为“经济科学出版社”的图书信息时,单纯的分类查询就不能满足
用户的需要,这时就要用到多条件查询。也就是说,多条件查询不仅可以实现单个的分类查询,
还可以实现多条分类查询的组合查询。每个查询条件之间用“并且”或“或者”的关系关联起来
组成完整的查询条件。 ² 模糊查询:对于用户来说并不一定完全记得某本图书准确的名称,类似,对于作者、出版社等
等信息来说,很多时候用户只是记得一些相关的信息而不是一字不差的准确信息。这个时候就要
用到模糊查询。用户输入查询内容后,系统将会把包含查询内容的(注意:并不是精确的等于查询
内容)所有相关图书信息显示出来,以使用户得到准确的、自己真正需要的信息内容。 l 更新与编辑: ² 更新:系统允许用户对查询到的内容进行修改并且存盘。 ² 编辑:系统允许用户对现库进行插入、删除的操作,保证现库的真实性与实时性。 l 打印输出:系统可以将用户查询到的内容动态地生成报表,并打印输出。 §4.2 系统功能模块划分 局域网图书图书资料查询系统功能划分模块图如下:
§4.3 系统数据库设计 4.3.1 概念设计 概念设计的目标是产生反映局域网图书资料查询系统需求的数据库概念结构,即概念模式。概念
模式是独立于数据库逻辑结构,独立于支持数据库的DBMS,不依赖于计算机系统的。 l ER模型 ER模型是对现实世界的一种抽象。它的主要成分是实体、联系和属性。使 用这三种成分,我们可以建立许多应用环境的ER模型。 l ER模型的操作 在利用ER模型进行数据库概念设计的过程中,常常需要对ER图进行种种 变换。这些变换又称为ER模型的操作,包括实体类型、联系类型和属性的分裂、合并和增删等等
。 l 利用ER方法的数据库概念设计 利用ER方法进行数据库的概念设计,可以分成三步进行:首先设计局部ER 模式,然后把各局部ER模式综合成一个全局ER模式,最后对全局ER模式进行优化,得到最终
的ER模式,即概念模式。 1. 设计局部的ER模式 通常,一个数据库系统都是为多个不同用户服务的。各个用户对数据的观点可能不一样,信息处
理需求也可能不同。在设计数据库概念结构时,为了更好地模拟现实世界,一个有效的策略是“
分而治之”,即先分别考虑各个用户的信息需求,形成局部概念结构,然后再综合成全局结构。
在ER方法中,局部概念结构又称为局部ER模式,其图形表示称为ER图。 实体和属性的定义如下: 图书(资料编号,资料名称,作者,出版社,出版日期,ISBN,资料类别,购买日期,保管人,
备注) 用户(编号,用户代码,用户姓名,登录口令,使用权限,查询显示项,用户显示头像) 资料类别(资料编号,资料类别) 出版社(出版社编号,出版社) 上一页 [1] [2] [3] [4] [5] [6] 下一页 |