您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文化 > SQL 第04章 数据库应用系统设计
第4章网络数据库应用系统设计4.1网络数据库应用系统设计概述4.2数据库应用系统的开发方法和一般方法4.3教务管理数据库系统的设计概述4.4教务管理系统的基本需求4.5数据库的逻辑设计4.6逻辑设计的物理实现4.7设计数据完整性4.8数据库服务器编程4.9设计完成后的表及表中的列返回目录24.1网络数据库应用系统设计概述4.1.1网络数据库应用的特点4.1.2网络数据库应用系统体系结构4.1.3B/S、C/S体系数据库应用系统的比较34.1.1网络数据库应用的特点网络数据库与传统的数据库相比,有以下几个特点:1)扩大了数据资源共享范围。2)易于进行分布式处理。3)数据资源使用形式灵活,既可以采用C/S方式,也可以采用B/S方式。4)便于数据传输交流。5)降低了系统的使用费用,提高了计算机的可用性。6)数据的保密性、安全性降低。44.1.2网络数据库应用系统体系结构1.C/S(Client/Server)模式C/S模式是客户/服务器模式的简称,客户端应用软件主要是用户界面。当用户调用服务器资源时,客户机将请求传送给服务器,并根据服务器回送的处理结果进行分析,然后显示给用户。C/S模式结构如图4-1所示。服务器客户机图4-1C/S模式结构图5基于C/S结构的开发系统具有以下技术特点:1)按功能划分,服务器是服务的提供者,客户机是服务的消费者。C/S根据服务的观点对功能进行了明确的划分。2)共享资源。一个服务器可以在同一时刻为多个客户机提供服务,并且服务器具有并发控制、封锁等能力,从而协调多用户对于共享资源的访问。3)不对称协议。在客户机与服务器之间存在着多对一的主从关系。即客户通过请求与服务器主动对话,而服务器则是被动地等待客户请求。4)定位透明性。C/S系统应该向客户提供服务器位置透明性服务。所谓透明性是指某一种实际存在的事物具有看来好像不存在的性质。定位透明性是指用户不必知道服务器的位置,就可以请求服务器的服务。5)基于消息的交换。客户机和服务器是一对耦合的系统,它们通过消息传递机制互相协作。消息是服务请求与服务响应的媒介。6)可扩展性。C/S系统可以水平地或垂直地扩展。水平扩展是指添加客户工作站对系统性能影响很小,垂直扩展是指移植到更大的或者更快的服务器或多服务器系统中将提高系统的整体性能。62.B/S(Brower/Server)模式B/S模式由浏览器、Web服务器、数据库服务器3个部分组成。在这种模式下,客户端使用一个通用的浏览器,用户的所有操作都是通过浏览器进行的。该结构的核心部分是Web服务器,它负责接受远程(或本地)的HTTP查询请求,然后根据查询的条件到数据库服务器中获取相关数据,再将结果翻译成HTML和各种页面描述语言,回传至提出查询请求的浏览器。Web服务器Web浏览器数据库服务器图4-2B/S模式结构图4.1.2网络数据库应用系统体系结构7基于B/S结构开发应用系统的的特点如下:1)由于Web支持底层的TCP/IP协议,使Web网与局域网都可以做到连接,从而彻底解决了异构系统的连接问题。2)由于Web采用了“瘦客户端”,使系统的开放性得到很大的改善,系统对将要访问系统的用户数的限制有所放松。3)系统的相对集中性使得系统的维护和扩展变得更加容易。比如数据库存储空间不够,可再加一个数据库服务器;系统要增加功能,可以新增一个应用服务器来运行新功能。4)界面统一(全部为浏览器方式),操作相对简单。5)业务规则和数据捕获的程序容易分发。83.B/S与C/S的混合模式将上述两种模式的优势结合起来,即形成B/S和C/S的混合模式。对于面向大量用户的模块采用三层B/S模式,在用户端计算机上安装运行浏览器软件,基础数据集中放在较高性能的数据库服务器上,中间建立一个Web服务器作为数据库服务器与客户机浏览器交互通道。而对于系统模块安全性要求高,交互性强,处理数据量大,数据查询灵活时,则使用C/S模式,这样就能充分发挥各自的长处,开发出安全可靠,灵活方便,效率高的数据库应用系统。4.1.2网络数据库应用系统体系结构94.1.3B/S、C/S体系数据库应用系统的比较1.B/S体系数据库应用系统的优、缺点⑴优点1)简化了客户端。2)简化了系统的开发和维护。3)使用户的操作变得更简单。4)B/S结构特别适合于网上信息发布,使得传统的信息管理系统的功能有所扩展,这是C/S结构无法实现的。10(2)缺点1)企事业单位或部门是一个有结构、有管理、有确定任务的有序实体,而Intemet面向的却是一个无序的集合,B/S必须适应并迎合长期C/S下的有序需求方式。2)传统的工作中已经积累了或多或少的各种基于非Internet技术上的应用,与这些应用连接是Intranet一项极其重要而繁重的任务。缺乏对动态页面的支持能力,没有集成有效的数据库处理功能,安全性难以控制,好集成工具不足等,也是B/S目前存在的问题。112.C/S体系数据库应用系统的优、缺点⑴优点1)交互性强。2)C/S模式提供了更安全的存取模式。3)采用C/S模式降低网络的通信量。4)由于C/S在逻辑结构上比B/S结构少一层,对于相同的任务,C/S结构完成的速度总比B/S快。使得C/S结构更利于处理大量数据。12(2)缺点1)开发成本较高。C/S结构对客户端软硬件要求较高,尤其是软件的不断升级,对硬件要求不断提高,增加了整个系统的成本,客户端越来越臃肿。2)移植困难。不同开发工具开发的应用程序,一般来说互不兼容,不能在其他平台上运行。3)用户界面风格不一,使用繁杂,不利于推广使用。4)维护复杂,升级麻烦。如果应用程序要升级,必须到现场为每个客户机上的应用程序维护、升级。133.B/S、C/S体系数据库应用系统的选择(1)适合采用C/S结构的应用系统一般应具备以下特点:1)安全性要求高。2)要求具有较强的交互性。3)使用范围小,地点相对固定。4)要求处理大量数据。(2)适合采用B/S结构的应用系统应具备以下特点:1)使用范围广,地点灵活。2)功能变动频繁。3)安全性、交互性要求不同。144.2数据库应用程序的开发设计和一般步骤4.2.1数据库应用系统开发开发方法1.网络数据库应用系统的开发方法常用的几种软件开发方法。⑴结构化方法1)结构化分析。就是面向数据流自顶向下逐步求精进行分析。结构化分析的步骤为:①按照可行性研究后画好的数据流图,根据输出要求沿数据流图回溯,检验输出及运算所得到的信息是否能满足输出要求。②请用户复查数据流图,是否能满足用户要求。③细化数据流图,把比较复杂的处理过程分解细化。④编写文档,并进行复查和复审。152)结构化设计。分为总体设计和详细设计两部分。总体设计要确定系统的具体实现方法和软件的具体结构。其步骤为:①根据结构化分析的结果选择最佳实现方案。②功能分解,以确定系统由哪些模块组成,以及这些模块之间的关系。③设计软件结构,根据数据流图的类型(处理型、事务型)采用相应的映射方法,映射成相应的模块层次结构,并对其优化。④进行数据库设计,根据数据字典进行数据库的逻辑设计。详细设计是借助程序流程图、N-S图或PAD图等详细设计工具,描述实现具体功能的算法。3)结构化编程。采用结构化语言对详细设计所得到的算法进行编码。这一方法开发步骤明确,SA、SD、SP相辅相成,使软件开发的成功率大大提高,深受软件开发人员的青睐。16⑵原型化方法产生原型化方法的原因很多,主要是随着系统开发经验的增多,软件开发人员也发现并非所有的需求都能够预先定义,而反复修改是不可避免的。当然,采用原型化方法还是因为开发工具的快速发展,可以让用户得知系统框架。实现原型法有两种途径,分别是:抛弃原型法和演化原型法。原型化开发适合于用户业务不确定,需求经常变化的情况。当系统规模不是很大也不太复杂时,采用该方法比较好。(3)面向对象的开发方法随着面向对象编程(OOP)向面向对象设计(OOD)和面向对象分析(OOA)的发展,形成了面向对象的软件开发方法(ObjectModelingTechnique,OMT)。这是一种自底向上和自顶向下相结合的方法,它以对象建模为基础,不仅考虑了输入、输出数据结构,实际上也包含了所有对象的数据结构。174.2.2数据库应用系统开发的一般步骤1.认真收集、分析用户需要2.分析用户需要,编写用户需求说明书3.设计和建立数据库,设计系统功能4.编写程序5.调试、编写使用手册6.交给用户使用7.维护184.2.2收集、分析用户需求用户需要分析是非常重要的,它将关系到一个应用程序的成功和失败。因此,要使每一位参于新系统开发的人员都清楚用户的需求。在收集用户需求时要注意几点:•注意与用户的交流;•在用户纷繁复杂的意见中把握系统本质的需求;•关注系统开发过程中需求的改变;在一个应用系统中,开发者需要收集以下三种不同的需求:•功能需求•数据需求•性能需求194.2.3设计和建立应用系统设计和建立应用系统时,主要进行以下几个方面的工作:1.建立逻辑数据模型;2.选择数据库管理系统并完成逻辑设计的物理实现;3.实现用户所需求的功能;4.制作能重复使用的构件;5.使用开发管理工具;6.指定用户角色和权限;7.提供一致的用户界面;8.在应用程序中要加入诊断功能;204.2.4测试应用系统在应用程序开发的各个阶段都要进行测试。测试人员和测试内容的选择是很重要的。测试内容的选择可考虑以下几点:1.检验所建立的逻辑模型是否完整、准确;2.系统的用户界面、菜单结构和流程控制是否得到用户的认可;3.装载数据库的数据要有代表性,既要有继承性数据也要有新数据,用以验证数据模型、约束和容量假设;4.容错性测试,验证应用系统能否接受输入、拒绝无效输入和选择,在输入规则的和不规则的测试数据后得到的结果是否和预期的一样;5.校验T-SQL程序单元、如视图、存储过程等数据库对象的预期性能;6.模拟不同的应用负载,以测试系统在不同负载下的性能。214.2.5安装和实施应用程序在应用系统安装和实施间应考虑以下几个问题:1.安装应用系统;2.对应用系统进行验收;3.用户培训;4.提供系统使用说明书及联机帮助;4.2.6维护应用系统本章首页224.3教务管理数据库系统的设计概述教务管理数据库系统分为两个部分:一部分是提供原始数据信息的服务器的数据库系统的分析和设计;另一部分是进行数据处理的客户端应用程序的分析和设计。本课程主要讨论数据库系统的分析和设计。与数据库分析、设计相关的工作步骤是:•进行教务管理系统的需求分析;•进行数据库的逻辑设计,即将用户需求转化为数据库的逻辑模型;•逻辑模型的物理实现,在SQL上创建数据库、创建表及其他数据库对象;•设计和实现数据库的完整性,即实现域完整性、实体完整性、参照完整性;•对数据库服务器进行编程和管理;本章首页234.4教务管理系统的基本要求存储、检索、维护有关学生的信息;存储、检索、维护有关教师的信息;存储、检索、维护有关每个系的信息;存储、检索、维护有关每个班的信息;存储、检索、维护有关课程及使用教材的信息;存储、检索、维护有关课程安排的信息;打印每个学期每个班的课程表。本章首页244.5数据库的逻辑设计数据库的逻辑设计是描述数据库的组织结构、生成数据库模式。数据库模式定义如下内容:存储什么信息、数据的组织、需要什么表、列的定义。推荐的方法是采用ERA模型。4.5.1教务管理系统的ERA模型ERA模型是实体(Entity)-关系(Relation)-属性(Attribute)模型。其作用是描述其组织的概念模型,ERA模型主要由实体、关系、属性3个组件组成。在ERA模型中,实体一般用长方形表示,它在DB的逻辑设计中补转化为表。关系一般用菱形表示,在DB的逻辑设计中,关系是通过主键和外键来描述的,用于维护参照完整性,它也被转化为表。属性一般用椭圆形表示。在DB的逻辑设计中,属性被转化为表中的列或字段。经
本文标题:SQL 第04章 数据库应用系统设计
链接地址:https://www.777doc.com/doc-3458974 .html