您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第九章关系数据库系统
返回1第九章关系数据库系统9.1数据库基础数据库,顾名思义就是存放数据的仓库,但数据库对数据的存放不是简单的堆积,而是经过了科学的管理和组织,使其便于查找和操作。返回2第九章关系数据库系统9.1数据库基础数据库的概念可以概括为:数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享;具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。返回3信息与数据信息是人们对某种事物的理解,通常可以是一件事情、一种状况或者是基于研究和经验所获得的知识。数据是信息的表达。例如,在线书店必须记录图书的书名、作者、客户、订单、书籍评论、书籍版本、送货等非常多的信息。不同的用户所要保存和使用的数据各不相同,具体应该保存哪些数据由业务需求决定,保存数据的目的是使业务的运作更有效。返回4信息与数据在任何数据库中,一般都保存有两种类型的数据:静态的,或者是历史的数据。动态的,或者是事务性的数据。返回5文件系统最早用计算机实现对数据的管理是使用文件方式进行的。数据以文件形式保存,不仅使读文件的程序可以多次使用,而且其他程序只要知道数据格式和组织方式也可以使用,这就叫做数据资源共享。商业应用中数据共享是必须的。返回6文件系统然而,文件的组织结构往往与生成该文件的程序有关,其他人要共享该文件,就必须要熟悉文件的格式等信息。这为共享信息带来了诸多不便。通过文件共享数据,还有一致性修改的问题,即如果文件结构被修改了,则共享者的程序也要相应地做修改,否则就会出错。返回7文件系统以文件为基础的数据管理有很多不足之处:1.程序与数据不独立;2.数据重复不可避免;3.难于保持数据的一致性4.难以提供适当的信息提取方式,满足不同用户的需求5.难以保障安全返回8数据库系统信息共享和信息的易维护性是信息管理发展的必然要求。为了解决这些问题,产生了数据库技术。数据库技术的发展主要是用来克服文件系统的缺陷,克服这些缺陷主要是在应用程序和数据库之间增加了一个功能强大的软件——DBMS。下图说明了在数据库系统中,数据库用户、数据库应用程序及数据库管理系统之间的关系。返回9用户与数据库应用程序交互,数据库应用程序与DBMS交互,由DBMS负责访问数据库中的数据。也就是应用程序不直接与数据库打交道。返回10而在文件处理系统中,应用程序是直接访问存储数据的文件的。这个改变非常重要,它使得编程工作变得非常简单,因为应用程序不再需要关心数据的记录结构和物理存储方式。这样,开发人员就可以将注意力集中在如何满足用户的需要上,而不必集中在计算机系统如何组织数据的问题上。返回11从上述分析可以看到数据库具有如下特点:数据是集成的数据重复少程序与数据相对独立容易提供符合用户不同要求的信息提取方式易于提供安全保障返回129.2数据模型模型是指明事物本质的方法,是对事物、现象、过程等客观系统的简化描述,是理解系统的思维工具。可将模型分为两层,一层是面向用户的,称之为概念模型;另一层是面向计算机系统的,称之为数据模型。返回139.2数据模型概念模型:使用简单的概念、清晰的表达方式来直观表达应用对象及其关联,便于用户理解;而且与数据库管理系统无关。建立概念模型的过程称为数据建模。返回149.2数据模型数据模型是面向计算机的,因此它通常需要有严格的形式化定义并加上一些限制和约定。在数据库中,数据模型通常由数据结构、数据操作和数据完整性约束三部分组成,也称为数据模型三要素。这三者精确地描述了数据库系统的静态特性、动态特性和完整性约束条件。返回15较常用的数据结构有层次、网状、关系和对象等模型。层次模型层次模型的体系结构是基于父/子关系的,层次模型就像一棵倒置的树。其特性是每个上层(父)数据结点可以有多个子结点,而每个子结点只能有惟一的父结点北京航空航天大学航空科学与工程学院宇航学院计算机学院......飞行学院飞机系人机与环境工程系计算机科学技术系新媒体艺术系一班二班一班二班一班二班一班二班校院系班返回16层次模型北京航空航天大学航空科学与工程学院宇航学院计算机学院......飞行学院飞机系人机与环境工程系计算机科学技术系新媒体艺术系一班二班一班二班一班二班一班二班校院系班返回17网状模型相对于层次数据库模型,网状数据库模型又有了一定的改善。网状模型的一个最主要的优点就是允许父表和子表之间共享关联关系,即子表可以有多个父表。此外,用户可以从网状模型的任何结点开始访问数据库。网状模型的查找算法比层次模型要复杂,它是按结点内保存的导航信息来实现的。返回18关系模型当用多个简单的数据描述一个复杂事物时,这些简单的数据之间是有联系的。人们把类型相同的记录集合称为一个关系。关系数据库中数据存储的主要载体是二维表,表由行和列组成,一行表示一条数据记录,一列表示所有数据记录在特定域的值。一条数据记录描述了一个应用对象的实例状态,表中的数据要满足完整性约束条件。比如日常见到的课程表、花名册表等都可看成是关系表。返回19对象模型20世纪80年代面向对象技术兴起后,人们开始探索用对象模型来组织数据库。以对象模型组织的数据库叫面向对象数据库。如前所述,对象封装了数据和操作,封装的对象继承父对象的数据和操作。如何封装、如何继承由类对象定义。每个实例对象在存储时只有各属性的数据,等向该实例对象发消息时,按实例对象查出它的类对象,从中找出方法检查无误后以该实例对象的数据运算该消息。返回20对象模型在这个意义上,类-实例和关系模型中的型-元组相似,只是类中有私有方法。从类继承上看,面向对象模型和层次(单继承)、网状(多继承)模型相似。对象模型检索时也需要导航。返回21对象关系模型由于面向对象模型和关系模型都还存在需要改进的地方,这导致了对象关系数据库模型的出现。对象关系数据库集中了两者的优点:关系模型的概念和面向对象的编程风格。国际标准化组织(ISO)也在最新的SQL标准中定义了对象关系概念。相关信息请参阅SQL2003标准。。返回22对象关系模型对象关系数据库的优点包括:关系对象数据库具有三维结构。支持用户自定义类型。对象关系数据库的缺点是:用户必须同时掌握面向对象和关系的概念。返回239.3数据完整性数据完整性用来确保数据库中数据的正确和有效。在关系数据库范畴,数据完整性大多数是由列的约束条件来控制的。约束条件可以检验进入数据库的数据值,在表一级和列一级上都可以定义约束条件。完整性约束条件可以防止不符合语义的数据进入数据库。通常,约束条件是用来确保新建或修改后的数据遵循所定义的业务规则。返回249.3数据完整性数据完整性包含三个方面:实体完整性。确保表中所有的数据行不重复。引用完整性。确保关联表之间数据的一致性应用语义完整性。保证数据库中的数据是有意义的,与实际情况是相符的返回259.4数据库系统的特点1数据库是自描述的数据库中除了包含用户的业务数据外,还包含关于它自身结构的描述。这些描述业务数据结构的内容称为元数据,数据库使用数据字典来存放元数据以及其他非业务性数据。数据字典是数据库系统自动产生并维护的,通常以系统表的形式存储。返回269.4数据库系统的特点2数据库是集成记录的集合数据库除了包含存放数据的文件和数据字典外,还包含用来提高数据查询性能的索引信息,索引类似于图书的目录。这样,一个数据库至少包含了三种数据(有些数据库还包含其他数据,比如安全控制数据):业务数据、数据字典和索引信息。返回279.4数据库系统的特点3数据库是现实业务的写实数据库是业务系统模型的写实,数据库所涉及的规则,必须符合现实世界的实际情况。存入数据库中的数据的细节程度取决于人们对信息的期望情况。需要的信息越多,数据库中包含的数据细节也就越多。确定合适的数据详细程度是数据库设计中的一个重要部分,但确定数据库存储数据的数量的主要依据之一是来自于用户对信息的需求程度。返回289.5数据库保护由于数据库中的数据是一种共享的资源,因此,为了保证所存储的数据不被别人有意或无意地删除和修改,以及当出现意外情况时,能够对数据库中已存储的数据进行恢复,必须提供数据库保护功能。数据库保护包括如下几个方面:安全控制、完整性控制、并发控制和数据恢复。已经在前边介绍了完整性控制,这里介绍安全控制和数据恢复。返回29安全管理数据库中的数据是共享的资源,但这并不意味着所有的人都可以随便使用或操作数据库中的数据。具体的用户对具体的数据库对象(库、表、列、过程等)都有具体的操作权。一个用户必须首先是数据库的合法用户,然后才能对数据库数据进行操作。返回30安全管理允许或者禁止某些人访问数据库是通过对用户身份的验证来实现的,用户身份包括两部分内容:用户标识(ID或叫用户名)和口令(Password)。如果一个用户是合法的数据库使用者,并不意味着他就可以对数据库中的数据进行任何操作,还需要对他授予数据的操作权。操作权限有多种,读取,写入,添加等等。返回31数据备份与恢复数据库中的数据是有价值的。一般一个数据库建好之后它要保存若干年甚至更长时间的业务数据,可想而知,这些数据一旦由于某种故障或意外事件而被毁坏,后果是不堪设想的。因此,实现数据库的恢复是DBMS的一个重要任务。返回32数据备份与恢复实现数据恢复的技术主要有两种:一种是利用数据库备份技术,也就是定期地对数据库进行备份,包括对数据库中的对象、数据和事务日志的备份。事务日志是一个操作系统可管理的文件,它记录了数据库中的所有操作。当数据库系统出现故障时,可以利用数据库备份文件将数据库恢复到备份时刻点;返回33数据备份与恢复实现数据恢复的技术主要有两种:另一种是利用镜像技术,也就是创建一个与数据库主设备对应的镜像设备,使镜像设备与主设备的数据同步更新或先后更新。这实际上是指一个数据库同时有两份备份。返回349.6数据库系统的模式在程序设计语言中,数据有型(Type)和值(Value)之分。型是数据所属数据类型的说明,而值是型的一个具体赋值,即一个具体的实例(Instance)。如整型是型,93是值。用数据模型描述数据时也有型、值之分。对某类数据的结构、类型和约束的描述是型的描述。型的描述在此称为数据模式(DataSchema)。在同一数据模式下,可以有很多的值,即实例。返回35模式(schema)是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及型的描述,不涉及到具体的值。模式的一个具体值称为模式的一个实例。一个模式可有多个实例。模式是相对稳定的,而实例是相对变动的。数据模式描述某一类事物的结构、属性、类型和约束,实质上是用数据模型对一类事物的模拟,而实例是反映某类事物的某一时刻的当前状态。返回369.6.1数据库系统的三级模式结构数据库系统的三级模式结构是指数据库系统的外模式、模式和内模式。下图说明了各级模式之间的关系。返回37模式模式也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。它是数据库系统结构的中间层,既不涉及数据的物理存储细节和硬件环境,也与具体的应用程序、与所使用的应用开发工具和环境无关。返回38模式模式实际上是数据库数据在逻辑级上的视图,即观察、处理数据间逻辑关系的方式。一个数据库只有一种模式。数据库模式以某种数据模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有机地结合成一个逻辑整体。返回39模式定义数据库模式时不仅要定义数据的逻辑结构,还要定义数据间的关系,定义与数据有关的约束要求。数据库管理系统都提供了模式定义语言(DDL)来定义数据库的模式。返回40外模式外模式也称为用户模式或子模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是满足不同数据库用户的数据视图,是与某一具体应用有关的数据的逻辑表示。外模式通常是模式的子集。一个数据库可以有多个外模式。由于它是各个用户的数据视图,如果不同的用户在应用需求、看待数据的方式、对数据保密的要求等方面存在差异,则其外模式描述就是不同的。即使对模式中的同一
本文标题:第九章关系数据库系统
链接地址:https://www.777doc.com/doc-2123799 .html