您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 软件设计与实践(二)-大连理工大学创新实验中心
软件设计与实践(二)什么是信息信息是指数据经过加工后所获取的有用知识,是以某种数据形式表现的.什么是数据数据是用来记录信息的可识别的符号.数据的表现形式数据的表现形式的多样的,主要有数字、文字、声音、图形和图象等形式.第1章数据库系统概论1.1信息与数据数据与信息的联系数据是信息的具体表现形式,信息是数据的有意义的表现.并非所有数据都表示信息,同一信息可以有不同的符号来表示,同一数据也可以有不同的解释.数据处理数据处理是将数据转换成信息的过程,包括(对数据的收集、存储、加工、检索、传输等一系列活动)目的是从大量的原始数据中抽取和推导出有价值的信息.信息、数据和数据处理的关系信息=数据+数据处理数据信息数据处理1.2数据管理技术的演变人工管理阶段(20世纪50年代中)文件系统阶段(50年代后期-60年代中期)数据库阶段(60年代末)高级数据库阶段(70年代开始)1.2.1人工管理阶段(20世纪50年代中期)特点:⑴主要用于科学计算,对于数据保存的需求尚不迫切.⑵计算机不保存数据,也没有专用的数据管理软件.⑶只有程序的概念,没有文件的概念,一组数据对应一个程序.缺点:数据存在着大量的重复存储现象.学生处教务处人事处学生信息数据集课程信息数据集教师信息数据集人工管理阶段1.2.2文件系统阶段(20世纪50年代后期到60年代中期)文件系统阶段背景⑴硬件方面出现了可以直接存取的外部存储设备.⑵软件方面有了操作系统中专门管理数据的文件系统.特点(1)数据以文件的形式可长久保存在外设(2)由专门的数据管理软件提供数据存取、查询及维护功能(3)数据文件具有多样性(4)数据存取以记录为单位缺点(1)数据冗余度大(2)文件系统与程序之间缺乏独立性,应用程序的改变将影响到文件数据结构的改变。学生处教务处人事处学生数据文件课程数据文件教师数据文件文件系统文件系统阶段1.2.3数据库阶段(20世纪60年代末)1969年IBM公司推出的层次模型数据库管理系统商品化软件IMS。1969年美国CODASYL组织发布了DBTG报告,总结了当时时各种各样的数据库,提出网状模型。1970年美国IBM公司的E.F.Codd连续发表论文,提出关系模型,奠定了关系数据库的理论基础应用程序1应用程序2应用程序n……..数据库管理系统数据库1.2.4高级数据库阶段(20世纪70年代)⑴数据库方法:面向对象方法和思想应用于各种计算机系统。⑵商用数据库系统的运行:使数据库技术日益广泛地应用到各方面,深入到生产,生活的各个领域.⑶关系方法的理论研究和软件系统的研制取得了很大成果.分布式数据库面向对象数据库多媒体数据库数据仓库1.3数据库系统组成与结构什么是数据库(DB)数据库是长期存储在计算机内的有组织的可共享的数据集合.什么是数据库管理系统(DBMS)指位于用户与操作系统之间的一层数据管理软件。DBMS能为数据库提供数据定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能,保证多用户对数据的并发使用及发生故障后的系统恢复。什么是数据库系统(DBS)指采用数据库技术的计算机系统,一般由计算机硬件、软件、数据库及其用户等构成。目前比较著名的DBMS有:Foxpro,ACCESS,MYSQL,IBMDB2,SQLServer,ORACLE,INFORMIX,SYBASE等等软件应用程序员用户数据库管理员(DBA)职责1)参与数据库设计的全过程2)帮助终端用户使用数据库3)定义数据的安全性和完整性4)监督控制数据库的使用和运行模式(逻辑模式):数据库中全部数据的逻辑结构和特性的描述。如:用户表,学生信息表、课程表,学生成绩表等由于模式是对数据库中所有数据的描述,因此一个数据库只有一个模式。1.4数据库系统的结构1.4.1三级模式结构外模式(子模式或用户模式):是数据库用户(包括程序员和最终用户)看见和使用的局部数据的逻辑结构和特性的描述。如:视图一个数据库可以由多个外模式。内模式(存储模式或物理模式):数据的物理结构和存储方式的描述,定义所有内部记录类型、索引和文件的组织方式,以及数据控制方面的细节。一个数据库系统只有一个内模式1.4.2两级映象模式/内模式映象:用于定义模式和内模式之间的对应关系。外模式/模式映象:用于定义外模式和模式间的对应关系。保证数据的独立性,从而保证应用程序的相对独立性。内模式外模式外模式外模式数据库用户视图用户模式外模式/模式映像模式/内模式映像数据独立性1.4.3信息系统体系结构相互有关联关系的数据的集合DBDBMS管理数据库的系统软件DBA完成某一功能的应用程序1应用程序2应用程序nDBAP1DBAP2DBAPnComputerSystem1、DBMS的主要功能数据库定义功能:DDL数据库操纵功能:DML数据库保护功能数据库维护功能数据字典数据库的操纵功能DBMS提供数据操纵语言DML来实现对数据库的操作,DML分为两种:⑴嵌入到宿主语言中,如嵌入在C、Java、Delphi、PowerBuilder等高级语言中,称为宿主型DML⑵可以独立交互使用的DML,称为自主型或自含型DML,常用的有Transact-SQL,SQLPlus等.数据库保护功能DBMS对数据库的保护主要包括四个方面:⑴数据安全性控制:数据安全性控制的作用是防止未被授权的用户破坏或存取数据库中的数据.⑵数据完整性控制完整性控制的目的是保证进入数据库中数据的语义的正确性和有效性,防止操作对数据的修改会违反其语义.⑶并发控制DBMS一般允许多个用户并发地访问数据库,即数据共享.但是多个用户同时对数据库进行访问可能会破坏数据的正确性,因此DBMS中必须有并发控制的机制,解决多用户下的并发冲突.⑷恢复功能数据库在运行中可能会出现各种故障,DBMS必须把处于故障中的数据库恢复到以前的某个正确状态,保持数据库的一致性.数据库维护功能DBMS提供一系列的实用程序来完成包括数据库的初始数据的装入、转化功能,数据库的存储、恢复功能,数据库的重新组织功能和性能监视、分析功能等.是对数据库结构的描述,不仅存放着对实际数据库三级模式的定义,而且还存放数据库运行时的系统信息.数据字典是数据库系统的一部分,但用户通常不能直接访问它,只有DBMS才能对它进行访问.数据字典2、DBMS的存取应用程序工作区子模式模式内模式OSDBMS数据库系统缓冲区①③②④⑤⑥⑦⑧1.5数据模型在数据库中如何抽象、表示、处理现实世界中的数据和信息呢?数据模型(DataModel)这个工具来对现实世界进行抽象的。★模型是现实世界特征的模拟和抽象。★数据模型◇也是一种模型,它是现实世界数据特征的抽象,表示实体以及实体间的联系。◇一个用于描述数据、数据间关系、数据语义和数据约束的概念工具的集合。数据模型应满足三方面要求:一是能比较真实地模拟现实世界;二是容易为人所理解;三是便于在计算机上实现。一种数据模型要很好地满足这三方面的要求在目前尚很困难。数据模型是数据库系统(结构)的核心和基础,各种机器上实现的DBMS软件都是基于某种数据模型的。现实世界信息世界:概念模型机器世界:数据模型认识抽象将客观事物抽象为能用计算机存储和处理的数据需经历三个阶段:⑴现实世界:存在于人们头脑外的客观世界.⑵信息世界:现实世界在人们头脑中的反映.⑶机器世界:又称数据世界,是数据库的处理对象.概念模型是按用户的观点来对数据和信息建模,主要用于数据库设计。数据模型(如层次、网状、关系模型,用于机器世界),它是按计算机系统的观点对数据建模,主要用于DBMS的实现。数据模型通常由数据结构、数据操作、和完整性约束三部分组成。数据模型三要素:1.5.1信息世界的数据描述◆实体(Entity)客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以是抽象的概念或联系,如学生、部门、课程、银行帐户、选课、订货、演出、比赛等。◆属性(Attribute)实体所具有的某一特性称为属性。如学生实体可以由学号、姓名、性别、出生年月、系、入学时间等属性组成。◆码(关键字,Key)唯一标识实体的(最小的)属性集称为码。例如学号学生实体的码。◆域(Domain)属性的取值范围称为该属性的域。例如学号的域为8位整数,姓名的域为字符串集合,性别的域为(男,女)。◆实体型(EntityType)具有相同属性的实体必然具有共同的特征和性质。用实体名及其属性名集合来抽象和刻划同类实体,称为实体型。例如:学生(学号,姓名,性别,出生年月,系,入学时间)。◆实体集(EntitySet)同型实体的集合称为实体集。例如,全体学生就是一个实体集。1.5.2机器世界的描述字段标志实体属性的符号集.记录字段的有序集合.文件同一类记录的汇集.键标识文件中每个记录的字段或集.现实世界信息世界计算机世界事物总体实体集文件事物个体实体记录特征属性字段事物之间的联系实体模型数据模型三个世界术语的对应关系实体联系模型层次模型(树型结构)网状模型(网状结构)关系模型1.5.3数据模型的分类实体联系模型(E-R模型)E-R模型的三要素:实体、属性、实体间的联系.表示属性表示实体间联系表示实体实体间的联系有两种:(1)不同实体集的实体间联系.一对一联系(1:1)、一对多联系(1:N)、多对多联系(M:N)校长任职学校11学生学习学校n1学生选修课程nm1:nn:m(2)同实体集的实体间联系.1:1、1:n:、n:m三种联系职工领导1n例1假设一个学生可选多门课程,而一门课程又有多个学生选修,每个学生每选一门课只有一个成绩,一个教师只能讲一门课程,一门课程也可有多个教师讲授,一门课使用多本参考书。画出E-R教师课程学生参考书讲授选修课程号学号姓名性别年龄成绩课程名学分职工号姓名职称性别书号书名价格摘要教学E-R图1nmnm使用1数据库设计基础一、关系型数据结构表:一个关系就是一个二维表元组:关系(表)中的一行属性:关系(表)中的列名属性的域:属性的取值范围关键字:能唯一标识每个元组的属性或属性的集合外部关键字:指关系中的某个属性或属性的集合,在本关系中不是关键字,而在另外一个关系中是关键字。关系数据库在关系模型中,实体是用关系来表示的,如:–学生(学号,姓名,性别,年龄,系别)–课程(课程号,课程名,课时)实体间的联系也是用关系来表示的,如:–学生和课程之间的关系–选课关系(学号,课程号,成绩)关系具有以下六条性质:(1)属性的不可分割性(2)属性名的不可重复性(3)属性的次序无关性(4)元组的个数有限性(5)元组的不可重复性(6)元组的次序无关性二、关系代数运算对象:关系运算类型:传统的集合运算(基础)专门的关系运算1、传统的集合运算(来源于数学集合理论)每个关系可以看作是若干元组(行)的集合。设R和S均为n目关系。(1)交(intersection)运算将两个关系中的公共元组构成新的关系。关系R与S的交记作:R∩S={t|t∈R∧t∈S}其结果仍为n目关系,由既属于R又属于S的元组组成。R∩Sn目指属性的个数(即列)的个数为n,属性域相同(2)并(union)是将两个关系中的所有元组构成新的关系,并且运算的结果中必须消除重复值。关系R和S的并记作:R∪S={t|t∈R∨t∈S}其结果仍为n目关系,由属于R或属于S的元组组成。R∪SR-S(3)差(difference)运算结果是由属于一个关系并且不属于另一个关系的元组构成的新关系,就是从一个关系中减去另一个关系。关系R与S的差记作:R-S={t|t∈R∧t∈S}其结果关系仍为n目关系,由属于R而不属于S的所有元组组成。(4)广义笛卡尔积(extendedcartesianproduct)n目关系R与m目关系S的广义笛卡尔积是一个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R与关系S的广义笛卡尔积有k1×k2个元组。记作:R
本文标题:软件设计与实践(二)-大连理工大学创新实验中心
链接地址:https://www.777doc.com/doc-475871 .html