文档库 最新最全的文档下载
当前位置:文档库 › 数据库系统与数据模型

数据库系统与数据模型

数据库系统与数据模型
数据库系统与数据模型

第一章数据库系统概论

本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。重点介绍关系数据库的有关知识。

1.1 数据管理技术发展史

随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要容中心。数据处理工作由来以久,早在1880年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。

【1】人工管理阶段

这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。由于需要与计算机硬件以及各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基本程序。数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。这样就给数据管理的维护工作带来许多困难。并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。存在着大量重复数据,信息资源浪费严重。

【2】文件管理阶段

这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组

织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。这样就使得程序和数据之间具有了一定的相互独立性。

但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。在这种情况下,数据管理中的维护工作量也是较大的。更主要的是由于采用文件的形式来进行数据管理工作,常常需要将一个完整的、相互关联的数据集合,人为地分割成若干相互独立的文件,以便通过基于文件系统的编程来实现来对它们的管理操作。这样做同样会导致数据的过多冗余和增加数据维护工作的复杂性。例如人事部门、教务部门和医务部门对学生数据信息的管理,这三个部门中有许多数据是相同的,如、年龄、性别等,由于是各部门均是根据自己的要求,建立各自的数据文件和应用程序,这样不仅造成了大量的相同数据重复存储,而且在修改时,常常需要同时修改三个文件中的数据项,如修改学生年龄,此外若需要增加一个描述学生的数据项,如通讯地址,那么所有的应用程序就必须都要进行相应的修改。除此之外,采用文件系统来帮助进行数据管理工作,在数据的安全和等方面,也难以采取有效的措施加以控制。

【3】数据库管理阶段

1在不断改进和完善文件系统的过程中,从六十年代后期开始,人们逐步研究和发展了以数据的统一管理和数据共享为主要特征的数据库系统。即在数据在统一控制之下,为尽可能多的应用和用户服务,数据库中的数据组织结构与数据库的应用程序相互间有较大的相对独立性等。与以往前数据管理方法和技术相比,利用数据库系统来进行数据管理工作具有以下三个显著特点:

(1)从整体角度组织数据

数据库系统与文件系统的最大差别就在于前者在描述数据时,不仅仅是对数据本身进行描述,而且对数据之间的相互联系也进行了描述。因此在组织数据时是从一个相对较高的整体角度进行的,而不是仅仅局限于个别的数据管理应用场合。如前面提到的人事部门、教务部门和医务部门对学生数据的管理工作,在利用数据库系统来进行管理时,若从整体考虑,其数据的组织结构如图1.1所示。

学生信息数据公用部分

人事部门学生数据专用部分教务部门学生数据专用部分医务部门学生数据专用部分

图1.1 学生信息数据组织结构

采用这种数据组织不仅可以有效地解决了文件系统的数据组织中所存在的数据冗余以及数据一致性维护的问题。更主要的是它可以使人们从更高的全局角度出发,合理地组织数据,从而有利于更大围的数据资源的共享,提高信息的使用效率。

(2)数据可为多个应用服务

正因为数据库中的数据是从整体角度进行组织的,因此,数据库中所存储的数据往往就不仅局限于只为一二个应用提供服务,而是在更大围为仅可能多的应用提供服务,如图1.1所示的一个数据库中所存储的数据,就至少可以为三个部门的应用提供服务。而实际上如图1.1所示的数据组织结构仅仅只是一个学校数据管理数据库中的一小部分。与此同时由于数据库系统是以多级(层)组织模式对数据进行组织的,各级(层)模式之间的映射是

由数据库系统自己完成的,这就使得数据与程序之间可以具有较高的物理和逻辑相对独立性。正是这一点,给数据库中的数据为多个应用提供服务奠定了基础。事实上数据库的规模越大,所能够提供的应用服务就可以越多,也就越能体现出数据库在数据管理中的优势。当然这只是相对而言,随着数据库中数据规模的扩大,数据库应用系统的制作和维护的工作也在迅速增加。

(3)有一个数据库系统的管理软件

任何数据库系统都包含一个管理软件,即数据库系统的管理软件,通常又称为数据库管理系统,它负责统一管理数据库系统中所有数据资源,是数据库系统与用户应用之间的接口,通过它,用户可以不必要了解过多的计算机硬件、软件和数据库本身许多专业知识,更不用去了解数据库系统是如何完成数据管理工作的具体细节,如文件如何打开、关闭、读、写等等,就可以通过编写一些较为简单数据库应用程序,很方便地完成在较高级别逻辑组织基础上的数据管理工作。除此之外,数据库管理系统还负责完成在对数据库进行并发访问时,保证数据一致性的并发控制工作;保证数据安全性的访问控制工作;以及在数据库系统出现故障时,提供保证数据一致性和完整性的恢复机制等诸多数据库系统本身的各种管理控制工作。因此这里也可以看出,数据库管理系统功能的强弱及其各项性能指标的好坏,是衡量数据库系统质量的一个极其重要的因素。

利用数据库系统进行数据管理工作,不仅可以保证数据的物理组织结构和存储设备与数据库应用程序之间保持相互独立性;同时也可以保证数据的逻辑组织结构与数据库应用程序之间保持最大可能的相互独立性,即当数据的逻辑组织结构发生变化时,数据库应用程序的变动被限制在最小的围。由此可大减少数据库应用程序的开发与维护的工作量。

在数据库管理阶段,根据数据库系统本身所支持的数据模型的特点及所采用的相应数据库系统技术,可以认为数据库管理到目前为止已发展经历了三代,即层次网状模型代、关系模型代和面向对象模型代。

(1)层次网状模型代:流行于六十至七十年代,在这一代中的数据库系统所支持的数据模型均是层次模型或网状模型。世界上第一个数据库系统是于1964年由美国通用电气公司开发成功的IDS(Integrated Data Store),它就是基于网状模型的数据库系统。IBM公司于六十年代末推出了第一个商品化的层次数据库系统IMS(Information Management Sytem),它们的出现与应用为数据库技术的发展奠定了基础。

(2)关系模型代:流行于七十至八十年代,在这一代中的数据库系统所支持的数据的数据模型均是关系模型。以关系(表)形式组织数据。1970年Codd提出了关系数据模型,由于其具有严格的数学基础,抽象级别较高,且简单清晰,便于理解应用。到了七十年代末,出现了不少关系数据库系统,其中具有代表性应首推IBM公司推出的SQL/DS和DB2两个商品化关系数据库系统。进行八十年代以后,关系数据库系统已成为数据库系统发展的主流,几乎所有新推出的数据库系统产品都是关系型的,它们中不仅有用于大型机和小型机数据库产品,而且有可用于微机的数据库产品。市场上开始出现关系数据库的系列产品,这其中发行量较大且在我国用得较多的有Oracle、Sybase、Sysbase、Informix、FoxPro 等。随着微机和计算机网络的广泛普及和应用,分布式数据库系统在八十年代后期,开始得到很大发展。其理论和技术日趋成熟。目前几乎所有分布式数据库系统均是关系型的,而且几乎所有主要关系数据库系统均已被扩充为分布式数据库系统。

(3)面向对象代:开始九十年代,在这一代中的数据库系统支持面向对象的数据模型。它是数据库技术与面向对象程序设计方法相结合的产物。作为新一代数据库系统,现在已有了一些商品化系统。但其具体应用尚不多。

1.2 数据库系统

本节主要介绍有关数据库结构和数据库系统组织的一些基本知识和概念,使读者对数据库系统的涵有一个较为清楚的认识。

1.2.1 数据库系统概念

由于数据库系统是一个由许多基本概念、技术方法和其应用对象所组成的复杂的有机整体。很难用一两句话将其描述清楚。但为了使读者对它有一个总体的了解,首先这里我们试着给出一个关于数据库系统的定义,即数据库系统中的数据库是一个已被规格化和结构化且相互关联的数据集合,这些数据中不存在有害的或无意义的冗余;数据的组织与存储结构与使用这些数据的程序相互独立;数据库中的数据可同时为多个应用服务;数据库中的数据定义、输入、修改和检索等所有操作均是按一种公用的且可控的方式进行。根据这一数据库定义以及实际应用的具体数据库系统的情况,我们可以认为一个数据库系统实际上是由三部分容组成,它们是数据库、多种应用和数据库管理系统。这三部分之间的相互关系如图1.2所示。

(1)数据库:相互关联的且具有最小冗余的数据在其中按照一定物理组织结构存放,并且从用户和数据库管理系统角度来看,这些数据又是按一定逻辑结构组织的。这种物理组织结构和逻辑组织结构在最大程度上与用户所编制的应用程序相互独立。

(2)多种应用:数据库中的数据,在数据库管理系统的控制与管理之下,可以同时为多种不同容的应用提供服务,即可以为多个不同目的用户服务,各用户所操作使用的数据可以是相互交叉的。用户的操作方式既可以按以数据输入/输出和数据维护为主的数据流量较大的批处理方式进行;也可以按以查询为主的数据流量较小的联机处理方式进行,必要时还可以通过编程来完成对数据库中数据的各种操作。

(3)数据库管理系统:它一方面负责对数据库中的数据进行管理和维护;一方面为用户操作数据库中的数据提供一种公用的操作方法,接收用户的操作命令,帮助完成有关的对数据库的操作并保障数据库的安全。

根据对数据库的定义以及数据库系统基本组成及作用的描述,我们认为一个的数据库系统应该具有的以下五个基本特点:

【1】由于数据库系统是从整体角度考虑数据的组织,因此它必须有能力描述能够反映客观事物及其相互联系的复杂数据模型,使用它能够对数据本身及相互间的各种关系进行充分描述,这也是人们为什么要采用数据库系统来进行数据管理的主要原因之一。目前数据库系统共提供了四种数据模型,它们是层次数据模型、网状数据模型、关系数据模型和对象数据模型,一种类型数据库系统通常只提供上述其中一种数据模型描述方法,即只支持其中一种数据模型的数据逻辑组织结构。

用户1

用户2

数据库管理系统数据库

....

用户n

图1.2 数据库系统组成

【2】数据库中数据的独立性。为了说明这一点,首先我们介绍两个概念,(1)数据在物理存储设备上的组织结构被称为数据的物理组织;(2)数据在用户或应用程序面前所表现出的组织结构被称为数据的逻辑组织;一种数据的逻辑组织,可以采用不同的物理组织来实现,物理组织的好坏影响着系统的性能和效率。在运行阶段中,由于性能的要求或存储设备的改变,从而引起数据物理组织的改变,这种改变称为数据的再组织。用户在编制应用程序时,则是根据数据的逻辑组织对数据进行操作的。因此数据物理组织的变化,不会影响数据的逻辑组织,因而也就不会影响已有的应用程序,这种情况就被称为数据的物理独立性;而数据的逻辑独立性是指当数据的逻辑组织发生变化时,如数据模型中增加了新的记录类型,某一记录类型中增加了新的数据项等,原有应用程序的执行不受影响或影响最小。数据的独立性,包括物理和逻辑的独立性,都是由数据库管理系统进行维护的。【3】数据共享,由于数据库是从整体的角度对数据进行组织的,并在保证数据一致性的情形之下,使数据库中的数据为尽可能多的用户提供应用服务。这些用户所使用的数据可以是交叉的,即数据可以共享。如果数据不能共享,数据库中则必然会出现大量的冗余数据,这样不仅造成存储空间的浪费,更主要的是由此可能带来数据不一致的隐患。

【4】数据库系统的安全可靠与完整,一个数据库系统的可靠性体现在它的软件系统运行故障率很小以及在数据库系统由于各种意外而出现故障时,数据库中的数据的损失最小;安全性是指数据库系统对其所存储的数据的保护能力,能够有效地防止数据有意无意地泄露或篡改,控制数据的授权访问等。而数据库系统的完整性则是指在多用户操作数据情况下,数据能够保持一致性。这些特性可以从以下几个方面进行说明:

〈1〉安全性控制

安全性控制主要指的是数据库的性。并不是每个用户都能够存取数据库中所有数据的,负责人和全体工作人员允许掌握的数据围显然是有区别的,数据库系统把各用户存取数据的权利分成若干等级,如教学人员作为一个用户可以登录学生的成绩,而学生作为一个用户则仅可以查阅成绩而无法对它进行修改或删除。通过对各个用户授于不同的使用权限,以确保数据库免遭损害和被非法使用,通常是通过采用口令密码以及数据库中数据访问授权等方法对使用者操作数据的合法权进行检验,以实现对数据库中数据安全性的保护控制。

〈2〉完整性控制

所谓完整性包括数据的正确性、有效性和相容性。正确的数据不一定是有效的。如若用两位阿拉伯数字来表示月份,在输入14来代表月份时显然是无效的。数据库系统应提供尽可能多的检验措施,以确保数据库中的数据满足用户所要求的各种约束要求。

〈3〉并发控制

在多用户操作使用数据库系统的情况下,不同用户并行地操作数据库就可能引起对数据库的干扰,从而使得数据库中的数据发生不一致的问题。如当甲用户从数据库中预定了仅剩的一机票之后,若在数据库尚来不及将剩余的机票数改为零时,乙用户又请求订票时怎么办?显然对这种并发的操作要采取某种控制措施,最常用的方法是封锁技术,以排除和避免这种错误的发生,保证数据库中数据的操作能够正确完成执行。

〈4〉故障的发现与恢复

由于数据库系统在运行过程中很难保证不产生故障、出现意义或受到破坏,而且往往这些情况的发生的时间都是随机的,如断电、用户误操作等,而重建一个数据库往往要花费很大的精力和代价,有时甚至是不可能的,因此数据库系统应提供应急保护设施,一旦系统的软硬件发生故障或用户误操作导致系统异常时,系统应能够以尽量小的代价,尽快地恢复数据库的容和系统的正常运行。

【5】良好的人机接口与性能,任何数据库系统最终都是要和用户打交道,系统所具有的各种功能最终都需要由用户来进行操作使用。简单易学、操作简便和用户界面友好是任何一个数据库系统所必须的。此外系统的响应速度,单位时间数据的吞吐量也是衡量数据库性能重要指标。

1.2.2 数据库结构

在上一小节,我们介绍了数据库系统所涉及的三个基本成分以及数据库系统所应具有的五个特点,在这一小节中,我们将略为详尽地介绍数据库系统的主要组成之一,数据库的有关知识。在数据库技术中,为了提高数据库中数据的逻辑独立性和物理独立性,采用了分级(层)方法,将数据库中数据的组织结构划分成多个级(层)。根据美国国家标准协会(ANSI)所提出的报告,数据库的数据组织结构可以分为三个相互关联的层次,它们分别是概念层数据模式、用户层数据模式和物理层数据模式。

【1】概念层数据模式,又称为模式,它是对数据库中数据整体逻辑结构的描述,它是对数据库中所有数据项、记录类型以及各记录类型之间的相互关系的描述。这里需要说明的是,这种描述仅仅是一种逻辑组织结构的描述,是面向用户需要而提出的。而非是真正的数据存储组织结构。提供这一层次的数据模式描述,主要是为了数据库应用系统的设计者,在对与应用有关的所有用户的需求进行统一综合考虑之后提出的,它能够从总体上,将这些需求所涉及到的数据及其它们间的相互联系,有机地结合成为一个逻辑整体。概念层数据模式的设计是数据库设计的最基本也是最重要的任务。

【2】用户层数据模式,又称为外模式或子模式,它是对以用户为对象使用数据库所涉及到的所有数据局部逻辑结构的描述。它是模式一个子集或者是一个映射,一个数据库只有一个模式,但通常都对应着多个子模式。子模式所包含的数据之间容许有重叠,也容许多个用户共用同一个子模式。提供这一层次的数据模式描述,有以下优点:

〈1〉用户只要按照描述自己所使用数据的子模式编写应用程序或输入操作命令,就可以完成满足自己要求的数据库操纵工作。而无需了解整体数据模式或数据的存储组织结构,从而是用户接口变得简单。

〈2〉保证了数据独立性。由于用户的数据库应用编程仅仅是依据子模式的数据逻辑结构的描述,而子模式一般都是模式的一个真子集,因此若因需要而对模式所描述的数据逻辑结构进行部分修改或扩充时,如增加新的数据项或者增加新的记录类型等,只要不影响子模式从模式中的原有的映射关系,那么用户依据子模式所开发的应用程序,则就不受模式变动的任何影响。所以提供模式与子模式这两层数据逻辑结构的描述,就可以较好地保证数据的逻辑独立性。

〈3〉数据能够被较好地共享。由于同一模式可以产生许多不同的子模式,这些子模式所描述的数据可以来源于模式所描述的全局数据逻辑结构中各种数据项或记录类型,因此这样做,这样就可以很方便地实现数据的共享,也就大大减少了数据可能存在的冗余,从而有利于保证数据的一致性、完整性和正确性。

〈4〉有利于保证数据的安全和。由于用户是通过其相应的应用程序对数据库中数据进行操作,因此他只能操作其子模式所描述围的数据,而无法接触到其它用户及其子模式所描述的数据,由此就可以保证数据库中的数据具有较好的安全性。

【3】物理层数据模式,又称为模式或物理模式。它是对数据库中所有数据在物理设备上实际存储的组织结构的描述。数据库数据根据这一层数据模式的描述,被存放到若干按各种组织方式建立起来的物理文件中,对这些物理文件的所有存取访问的控制都是由数据库管理系统统一控制的。管理系统负责完成从概念层数据模式到物理层数据模式之间的数据映射,这样由于所有的数据库应用程序或服务所涉及到数据又都是根据模式的数据描述得到的,因此当数据库数据的物理组织结构发生变化时,概念层数据模式描述通常无需修改,同样也就保证了与模式相关联的子模式和用户应用程序也无需修改,从而使得数据库系统中数据也具有的物理独立性。

用户1用户2 ...用户N 子模式1

子模式M

映射模式映射存储模式数据库

数据库管理系统

OS

图1.3 数据库结构各模式间关系

由于一个数据库是采用上述的三个层结构方式对其中的数据组织进行描述的,从而较好地保证了数据的逻辑独立性和物理独立性,方便了用户对数据库中数据的操作使用,减少了数据冗余。这三层模式之间的相互关系如图1.3所示。由于数据库中数据,实际上是按照物理层数据模式进行存储的,而概念层数据模式和用户层数据模式都只是对物理层数据模式描述的数据的一种逐级(层)地逻辑抽象,用户在对数据库进行操作时,都必须通过数据库管理系统,来完成从用户层数据模式到概念层数据模式之间、概念层数据模式到物理层数据模式之间这两种映射,当然这两种映射是由管理系统自动完成的,对用户是透明的。

目前实际应用的中高档数据库系统的数据组织结构基本上是按照上述三层模式标准,来描述数据组织的。也有一些中低档数据库系统,为了方便一般用户的操作使用,对上述三层模式标准进行了一些简化,它们往往采用一层或二层模式来描述数据组织结构,通常都略去了物理层的数据模式描述。

1.2.3 数据库系统

数据库系统的核心是数据库管理系统(DataBase Management System,简称DBMS),在它的控制和帮助下,用户可以建立、使用、修改和维护数据库中数据。数据库管理系统是建立在操作系统之上的应用软件平台。它一般具有以下三个主要功能:

(1)提供操作数据库的用户高级接口。具体讲就是(A)提供数据描述语言,供用户对整个数据库中的数据进行各种逻辑和物理组织结构描述,而这些组织结构的具体实现细节,则由DBMS完成,用户不必关心。(B)提供数据操纵语言,供用户对数据库中数据按照其定义逻辑组织结构进行各种操作,如插入、删除、修改和查询等,这些操作的的具体实现细节,则也由DBMS完成,用户不必关心。(C)同时还可能提供其它工具,如用户界面生成工具、报表生成工具等,帮助用户更加容易地对数据库的操纵进行编程。

(2)管理数据库。它主要包括以下功能:(A)控制整个数据库系统的运行;(B)控制用户对数据库的并发性操作;(C)执行对数据库中数据的安全、、有效性和完整性检验;

第2章 数据库系统的数据模型

第2章数据库系统的数据模型 第二章数据库系统的数据模型 本章主要内容 数据库是个具有一定数据结构的数据集合,这个结构是根据现实世界中事物之间的联系来确定的。在数据库系统中不仅要存储和管理数据本身,还要保存和处理数据之间的联系,这种数据之间联系与就是实体之间的联系。研究如何表示和处理这种联系是数据库系统的一个核心问题,用以表示实体以及实体之间联系的数据库的数据结构称为数据模型。本章将着重介绍一下概念模型、层次模型、网状模型、关系模型、面向对象模型等数据库系统的数据模型的基本概念和设计方法,为后面的数据库设计打下基础。 2.1 数据模型概述 数据模型(Data Model)是对现实世界数据特征的抽象,是用来描述数据的一组概念和定义。 为了把现实世界的具体事物抽象、组织为某一DBMS现实世界支持的数据模型,通常首先把现实世界中的客观对象抽象 认识抽象为概念模型,然后把概念模型转换为某一DBMS支持的数 据模型,这一过程如图2,1所示。概念数据模型:信息世界 数据模型按不同的应用层次可划分为两类: 转换 (1)概念数据模型(又称概念模型) 是一种面向客观世界、面向用户的模型,独立于计算逻辑数据模型:DBMS支持的数据模型机系统的数据模型,完全不涉及信息在计算机中的表示,

只是用来描述某个特定组织所关心的信息结构。概念模型是按用户的观点对数据建模,是用户和数据设计人员之间进行交流的工具,主要是用于数据库设计。例如E,R模型、扩充E,R模型属于这一类模型。 (2)逻辑数据模型(又称数据模型) 是一种直接面向数据库系统的模型,主要用于DBMS的实现。例如层次模型、网状模型、关系模型均属于这一类模型。这类模型有严格的形式化定义,以便于在计算机系统中实现。 2.1.1 数据模型的基本组成 数据模型是现实世界中的事物及其间联系的一种抽象表示,是一种形式化描述数据、数据间联系以及有关语义约束规则的方法。通常一个数据库的数据模型由数据结构、数据操作和数据的约束条件三个部分组成。 (1)数据结构 是指对实体类型和实现间联系的表达实现。它是数据模型最基本的组织部分,规定了数据模型的静态特性。在数据库系统中通常按照数据结构的类型来命名数据模型,例如,采用层次型数据结构、网状型数据结构、关系型数据结构的数据模型分别称为层次模型、网状模型和关系模型。 (2)数据操作 是指对数据库进行的检索和更新(包括插入、删除和修改)两类操作。它规定了数据模型的动态操作。 (3)数据的约束条件 数据的约束条件是一组完整性规则的集合,它定义了给定数据模型中数据及其联系应具 1 有的制约和依赖规则。以确保数据库中数据的正确性、有效性和相容性。

数据库基本概念

数据库基本概念 引言 本章的目标是讲解数据库研究人员常常要使用到的一些理论和术语。我所在的工作组集中了一批以开发性能优异的数据库系统为谋生手段的精英,数据库理论乍看起来与我们的具体工作相距甚远。 是否很有必要学习有关数据库理论方面的知识可能是留给你思考的一个问题。我们说,理解一种技术的基本原理是非常重要的。这就好比把你的汽车交给一个不懂火花塞工作原理的机械师,或是坐在一架由不懂飞行理论的驾驶员的飞机上。如果你不懂数据库设计的相关理论,又怎能指望用户登陆门请你设计系统呢? 研究人员所用的某些术语和概念令我们感到困惑,部分原因是数学基础的问题。有一些术语,大多数程序员理解为一种含义,而实际上是完全不同的另一种含义。为了能设计合理的系统,了解关系数据库理论是十分重要的。 为了搞清楚研究人员的专业术语,我们需要学习一些关系数据库理论中较浅显的内容,并且同我们所熟知的SQL概念进行比较。许多书中都讲解了这些内容,所以并不打算过于深入地探讨理论。我们只提供一些基本且实用的数据库概念。 本章将主要从面向SQL的角度介绍关系理论。我们将常常涉及相关理论的具体实现,尽管这超出了本书的范围,但却是难以避免的。然而我们不会陷入实现的细节,仅仅给出一个概述。更进一步的内容,参看第一章提到的参考书目。 在本章中,我们将会看到下列内容: ?关系模型——考察相关的技术术语:我们将在后面的章节中构造它们 ?其他数据库概念的定义 关系模型 正像第1章中提到的,E.F.Codd早在1970年就提出了关系模型的概念。在这一节中,我们将从SQL Server 的角度出发,考察一些在关系模型中比较重要的内容。 正像我们所看到的那样,SQL Server 与关系模型有很多共性的东西,但

数据库概论 习题参考答案

第1章绪论习题参考答案 1、试述数据、数据库、数据库管理系统、数据库系统的概念。(参见P3、4、5页) 参考答案: 描述事物的符号记录称为数据;数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库管理系统是位于用户与操作系统之间的一层数据管理软件; 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。 2.使用数据库系统有什么好处?(参见P12页) 参考答案: 数据库系统使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的阶段,这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。 3.试述文件系统与数据库系统的区别和联系。(8、9、10页) 参考答案: 1)数据结构化是数据库与文件系统的根本区别。 在文件系统中,相互独立的文件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。数据库系统实现整体数据的结构化,是数据库的主要特征之一。 2)在文件系统中,数据的最小存取单位是记录,粒度不能细到数据项。而在数据库系统中,存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项一个记录或或一组记录。 3)文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。而在数据库系统中数据不再针对某一应用,而是面向全组织,具有整体的结构化。5.试述数据库系统的特点。(9、10、11页) 参考答案: 数据结构化;数据的共享性高、冗余度低、易扩充;数据独立性高;数据由DBMS统一管理和控制。 6.数据库管理系统的主要功能有哪些? (4页)

数据库的4个基本概念

数据库的4个基本概念 1.数据(Data):描述事物的符号记录称为数据。 2.数据库(DataBase,DB):长期存储在计算机内、有组织的、可共享的大量数据的集合。 3.数据库管理系统(DataBase Management System,DBMS 4.数据库系统(DataBase System,DBS) 数据模型 数据模型(data model)也是一种模型,是对现实世界数据特征的抽象。用来抽象、表示和处理现实世界中的数据和信息。数据模型是数据库系统的核心和基础。 数据模型的分类 第一类:概念模型 按用户的观点来对数据和信息建模,完全不涉及信息在计算机中的表示,主要用于数据库设计现实世界到机器世界的一个中间层次 实体(Entity): 客观存在并可相互区分的事物。可以是具体的人事物,也可以使抽象的概念或联系 实体集(Entity Set): 同类型实体的集合。每个实体集必须命名。 属性(Attribute): 实体所具有的特征和性质。 属性值(Attribute Value): 为实体的属性取值。 域(Domain): 属性值的取值范围。 码(Key): 唯一标识实体集中一个实体的属性或属性集。学号是学生的码 实体型(Entity Type): 表示实体信息结构,由实体名及其属性名集合表示。如:实体名(属性1,属性2,…) 联系(Relationship): 在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体型内部的联系(各属性)和实体型之间的联系(各实体集)。有一对一,一对多,多对多等。 第二类:逻辑模型和物理模型 逻辑模型是数据在计算机中的组织方式 物理模型是数据在计算机中的存储方式 数据模型的组成要素 数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成 关系模型(数据模型的一种,最重要的一种) 从用户观点看关系模型由一组关系组成。每个关系的数据结构是一张规范化的二维表。 ?关系(Relation):一个关系对应通常说的一张表。 ?元组(Tuple):表中的一行即为一个元组。 ?属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名。 ?码(Key):表中的某个属性组,它可以唯一确定一个元组。 ?域(Domain):一组具有相同数据类型的值的集合。属性的取值范围来自某个域。

数据库系统原理课后答案 第九章

9.1 名词解释 (1)OODBS:是指面向对象数据库系统,它既具数据库管理的基本功能,又能支持面向对象的数据模型。 (2)ORDBS:基于对象关系数据模型的DBS称为对象关系数据库系统(ORDBS)。 (3)平面关系模型:传统的关系模型称为“平面关系模型”,它要求关系模式具有第一范式(1NF)性质,关系具有规范化的结构。也就是规定属性值是不可分解的,即不允许属性值具有复合结构(元组或关系)。 (4)嵌套关系模型:是从平面关系模型发展而成的。它允许关系的属性值又可以是一个关系,而且可以出现多次嵌套。嵌套关系突破了1NF的定义框架,是“非1NF关系”。 (5)复合对象模型:在嵌套关系模型上进一步放宽要求。在关系定义上,集合与元组不再有交替出现的严格限制,此时的关系中,属性类型可以是基本数据类型、结构类型(元组类型)或集体类型(即关系类型)。 (6)数据的泛化/细化:是对概念之间联系进行抽象的一种方法。当在较低层上的抽象表达了 与之联系的较高层上抽象的特殊情况时,就称较高层上抽象是较低层上抽象的"泛化",而较低层上抽象是较高层上抽象的"细化"。 (7)对象关系模型:在传统关系数据基础上,提供元组、数组、集合等更为丰富的数据类型及处理新数据类型操作的能力而形成的数据模型。(注:传统关系模型只支持字符、数值、字串,布尔值等等基本数据类型及其处理功能) (8)类型级继承性:当继承性发生在类型级时,子类型继承了超类型的属性。也就是说,超类型所具有的属性,在子类上也具有。 (9)表级继承性:继承性也可发生在表级,(就是元组集合上发生继承),子表继承超表全部属性,超表中每个元组最多可以与子表中一个元组对应,而子表中的每个元组在超表中恰有一个元组对应,并在继承的属性值上具有相同的值。 (10)引用类型:数据类型可以嵌套定义,在嵌套引用时,不是引用对象本身,而是个用对象标识符(即指针),这种指针被称为引用类型。 (11)对象:客观世界中的实体经过抽象称为问题空间中的对象,它是对一组信息及其操作的描述。 (12)类:是具有相同的变量名和类型、相同的消息和使用方法的对象的集合。 (13)单重继承性:一个子类继承某一个超类的结构和特性,称为单重继承性。 (14)多重继承性:一个子类继承多个超类的结构和特性,称为多重继承性。 (15)对象标识:在面向对象语言中,对象标识是一个指针一级的概念,在对象创建的瞬间,由系统赋给每个对象一个“标识”,即系统内的一个唯一的指针,在对象生存期内,这个标识不可改变。 (16)对象包含:不同类的对象之间存在的包含关系称为对象包含。包含是一种“一部分”(is part of)的联系。 (17)类继承层次图:表示类继承关系的图,由超类名、子类名和一组线条自上而下有序的表示。(18)类包含层次图:表示对象包含关系的图,由一些具有包含关系的对象和线条自上而下表示(下方的对象为其连线所指上方对象的一部分)。 (19)持久数据:是指创建这些数据的程序运行终止后数据依然存在于系统之中。数据库中的关系就是持久数据。 (20)持久对象:程序运行结束后,被保留下来的对象称为持久对象。 (21)持久指针:持久指针可看作是数据库中指向对象的指针。持久化指针不像内存中的指针,它在程序执行后及数据重组后仍保持有效。 (22)持久化C++系统: 基于C++的持久化扩充的OODBS。

关系数据库的基本概念应用

★事业单位考试专用★ 数据库 1.数据模型(Data Models):在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟。 2.数据模型应满足三方面要求:能比较真实地模拟现实世界;容易为人所理解;便于在计算机上实现。 3.数据模型:按计算机的观点对数据建模,主要用于DBMS的实现。一般有层次,网状,关系三种。 4.矩形:表示实体集;菱形:表示联系集;线:连接实体集与联系集或属性与实体集;椭圆:表示属性;下划线:主码属性。 5.常用数据模型:层次模型、网状模型、关系模型、面向对象模型。 6.层次模型的存储结构:邻接法:前序穿线树;链接法:用指针表示层次关系(子女-兄弟链接法,层次序列链接法)。(众) 7.网状模型存储结构:链接法:用指针表示层次关系(单链,双链,环链等)。(S_XH,C_KCH) 8.关系模型中,关系的每一个分量必须是一个不可分的数据项。 9.SQL语言的REVOKE语句实现安全性数据控制功能。 10.数据仓库通常采用三层体系结构、底层的数据仓库服务器一般是一个关系型数据库系统、数据仓库前端分析工具中包括报表工具。 11.Linux是一套免费使用和自由传播的类Unix操作系统、Linux提供强大的应用程序开发环境,支持多种编程语言、Linux提供对TCP/IP协议的完全支持。 12.Solaris是SUN公司的高性能Unix,Solaris运行在许多RISC工作站和服务器

上,Solaris支持多处理、多线程。 13.Unix系统的特色:交互的分时系统、以全局变量为中心的模块结构、可以分成内核和外壳。Unix系统中进程由三部分组成:进程控制块,正文段和数据段。Unix系统中,输入/输出设备被看成是特殊文件。 14.属于企业级的大型数据库管理系统的主要有Oracle、DB2、Informix、Sybase 、SQL Server。 15.DBA是数据库系统的一个重要组成,有很多职责:定义数据库的存储结构和存取策略、定义数据库的结构、定期对数据库进行重组和重构。 16.对于数据量大的网站,应选用的数据库是DB2。 17.关系代数表达式的优化策略中,首先要做的是尽早执行选择运算。

数据库系统与数据模型简介

数据库系统与数据模型简介 胡经国 本文作者的话 本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。以此作为云计算学习笔录,供云计算业外读者进一步学习和研究参考。希望能够得到大家的指教和喜欢! 下面是正文 一、数据库系统及其组成 1、数据库系统的概念 数据库系统(Database System)是用于组织和存取大量数据的管理系统,方便多用户使用计算机软硬件资源组成的系统。它与文件系统的重要区别是数据的充分共享、交叉访问以及应用(程序)的高度独立性。 2、数据库系统的组成 数据库系统由计算机系统、数据库、数据库管理系统、应用程序和用户组成。 ⑴、计算机系统 计算机系统是指用于数据库管理的计算机硬件资源和基本软件资源。其中,硬件资源包括CPU、大容量内存(用于存放操作系统、数据库、数据库管理系统、应用程序等)、直接存取的外部存储设备(硬盘);软件资源包括操作系统、应用程序。 ⑵、数据库 什么是数据库?数据库是提供数据的基地。它能保存数据,并让用户从它那里访问有用的数据。数据库是数据处理的新技术,也是一项先进的软件工程。 数据库中的业务数据,是以一定的组织方式存储在一起的、相互有关的数据整体。数据库中保存的数据是相关数据,是一种相对稳定的中间数据。为了便于管理和处理这些数据,将这些数据存入数据库时,必须具有一定的数据结构和文件组织形式(顺序文件、索引文件)。 “相关数据”、“一定的组织形式”和“共享”是关系型数据库的三个基本要素。 ⑶、数据库管理系统

数据库管理系统(Database Management System,DBMS)包括面向用户的接口功能和面向系统的维护功能两大方面。前者为用户存取数据提供必要的手段,包括处理能力。后者为数据库管理者提供数据库的维护工具,具体包括数据库定义、数据装入、数据库操作、控制、监督、维护、恢复、通信等。 数据库管理系统通常由以下三部分组成:数据库描述语言(DLL)、数据库操作(DML)或查询程序、数据库管理例行程序。 总之,信息的集合是数据库,而数据库管理系统的软件则可用于完成信息的存储和检索。 ⑷、应用程序和用户 数据库管理员(DBA)是系统工作人员,负责对整个数据库系统进行维护。 应用程序员是后台专业用户,对数据库进行检索、插入、删除或更新。 非程序员是终端用户,通过联机终端设备,由基本命令组成的询问语言对数据库进行检索、插入、删除或更新等操作。例如,话务员、管理员、质检员。 二、数据模型 1、数据模型基本概念 数据模型是数据库系统的核心,是对客观事物及其联系的数据的描述,即实体模型的数据化。数据模型是表示实体与实体之间联系的模型。 2、数据模型类型 当前,流行的数据模型有:关系、层次、网状三种数据模型。 ⑴、关系数据模型 关系数据模型是新的DBMS,将数据简单地表示为一个或多个表格的内容。它是由表格形式体现的,这种“表”在数学上称为关系。表中的每一行称为记录,每个记录由若干字段组成:一个记录描述一个事物,它的各个字段是该事物各种性质的描述。在关系数据库中,这些字段称为属性。 ⑵、层次数据模型 层次数据模型,也称为树状模型,是一个以记录类型为结点的有根的定向树。 层次数据模型的特点为:有而且仅有一个实体,向上不与任何实体联系,称为根;有若干实体,向下不与任何实体联系,称为叶;其余的实体,向下可以与任何实体联系,但向上只与唯一的一个实体联系(一对多联系),称为中间节点。根节点在最高层,即第一层。同一层上的节点之间没有联系。具有这些特点的数据结构,称为层次结构。例如大学行政组织结构。典型例子是IBM的IMS。

数据库的体系结构

数据库基础 ( 视频讲解:25分钟) 本章主要介绍数据库的相关概念,包括数据库系统的简介、数据库的体系结构、数据模型、常见关系数据库。通过本章的学习,读者应该掌握数据库系统、数据模型、数据库三级模式结构以及数据库规范化等概念,掌握常见的关系数据库。 通过阅读本章,您可以: 了解数据库技术的发展 掌握数据库系统的组成 掌握数据库的体系结构 熟悉数据模型 掌握常见的关系数据库 1 第 章

1.1 数据库系统简介 视频讲解:光盘\TM\lx\1\数据库系统简介.exe 数据库系统(DataBase System,DBS)是由数据库及其管理软件组成的系统,人们常把与数据库有关的硬件和软件系统称为数据库系统。 1.1.1 数据库技术的发展 数据库技术是应数据管理任务的需求而产生的,随着计算机技术的发展,对数据管理技术也不断地提出更高的要求,其先后经历了人工管理、文件系统、数据库系统等3个阶段,这3个阶段的特点分别如下所述。 (1)人工管理阶段 20世纪50年代中期以前,计算机主要用于科学计算。当时硬件和软件设备都很落后,数据基本依赖于人工管理,人工管理数据具有如下特点: ?数据不保存。 ?使用应用程序管理数据。 ?数据不共享。 ?数据不具有独立性。 (2)文件系统阶段 20世纪50年代后期到60年代中期,硬件和软件技术都有了进一步发展,出现了磁盘等存储设备和专门的数据管理软件即文件系统,文件系统具有如下特点: ?数据可以长期保存。 ?由文件系统管理数据。 ?共享性差,数据冗余大。 ?数据独立性差。 (3)数据库系统阶段 20世纪60年代后期以来,计算机应用于管理系统,而且规模越来越大,应用越来越广泛,数据量急剧增长,对共享功能的要求越来越强烈。这样使用文件系统管理数据已经不能满足要求,于是为了解决一系列问题,出现了数据库系统来统一管理数据。数据库系统满足了多用户、多应用共享数据的需求,它比文件系统具有明显的优点,标志着管理技术的飞跃。 1.1.2 数据库系统的组成 数据库系统是采用数据库技术的计算机系统,是由数据库(数据)、数据库管理系统(软件)、数

数据库系统 包括题目和答案

数据库系统原理复习题 第1章 一、选择题 1.数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(A )。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 2.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是(D )。 A.层次模型 B. 关系模型 C. 网状模型 D. 实体-联系模型 3.目前,数据库管理系统最常用的逻辑数据模型是(C)。 A.网状模型B.层次模型 C.关系模型D.面向对象模型 4.下列四项中,不属于数据库系统特点的是(C)。 A.数据共享 B. 数据完整性 C. 数据冗余度高 D. 数据独立性高 5.数据模型的三个要素分别是(B )。 A.实体完整性、参照完整性、用户自定义完整性 B.数据结构、数据操作、数据完整性约束条件 C.插入数据、修改数据、删除数据 D.外模式、模式、内模式 6.数据库三级结构从内到外的3个层次依次为(B)。 A.外模式、模式、内模式 B. 内模式、模式、外模式 C. 模式、外模式、内模式 D. 内模式、外模式、模式 7.下列关于数据库系统的正确叙述是(A): A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余 C.数据库系统中数据的一致性是指数据类型的一致 D.数据库系统比文件系统能管理更多的数据 8.数据的逻辑独立性是指(B)。 A.外模式改变时保持应用程序不变B.模式改变时保持外模式不变 C.内模式改变时保持模式不变D.数据改变时保持应用程序不变

9.数据的物理独立性是指(C)。 A.外模式改变时保持应用程序不变B.模式改变时保持外模式不变 C.内模式改变时保持模式不变D.数据改变时保持应用程序不变 10.公司有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职 员,从部门到职员的联系类型是(D)。 A.多对多 B. 一对一 C. 多对一 D. 一对多 11.储蓄所有多个储户,储户在多个储蓄所之间存款,储户与储蓄所之间是(C)。 A.一对一联系 B. 一对多联系 C. 多对多联系 D. 不确定联系 12.描述数据库全体数据的全局逻辑结构和特性的是(A)。 A.模式 B. 内模式 C. 外模式 D. 以上三级模式 二、填空 1. 数据库系统一般由(数据库)、(数据库管理系统)、(应用程序)和(数据库管理员) 组成。 2. 数据库是长期存储在计算机中、有(组织)的、可(共享)的数据集合。 3. DBMS表示(DataBase Management System),它是位于(用户)和(操作系统)之 间的一层数据管理软件。 4. 实体之间的联系可抽象为三类,它们是(一对一)、(一对多)和(多对多)。 5. 数据模型的三要素包括(数据结构)、(数据操作)和(数据完整性约束条件)三部 分。 6. 根据数据模型的应用目的不同,数据模型分为(概念模型)、(逻辑模型)和(物理 模型)等。 7. 按照数据结构的类型命名,逻辑模型分为(关系模型)、(层次模型)和(网状模型) 等。 8. E-R图中,(矩形)表示实体,(椭圆)表示属性,(菱形)表示实体之间的联系。 三、简述题 1. 数据库是长期存贮在计算机内的、有组织的、可共享的大量数据的集合。 2. 数据库管理系统的主要功能包括: (1)数据定义功能, (2)数据的组织、存储和管理,

数据模型与数据库系统结构

数据模型与数据库系统结构 1.数据 为了了解世界,研究世界和交流信息,我们需要描述各种事物,用自然语言来描述虽然很直接,但是过于烦琐,不便于形式化,更不利于计算机去表达,为此,我们常常只抽取那些感兴趣的事物特征或属性来描述它。 例如:XX今天下课回到寝室,跟室友说,啊,兄弟们,我单身了!!~~~~准备请大家吃顿饭庆祝一下~~~~ 大家好奇的问 他叫小雪,21岁,是医护系的,护理专业和我是老乡,遵义人。 我们可以从胡锋的描述中获取到以下一条记录,小雪今年21岁遵义人是医护系护理专业的学生,那这种描述事物的符号记录我们称为数据。 数据有一定的格式,例如姓名在中国而言一般是4个汉字的字符(某些少数民族),性别呢是一个汉字字符,等等,那这些我们称为数据的语法,而数据的含义是数据的语义。我们通过解释、推论,归纳,分析和综合等等方法,从数据中获得有意义的内容称为信息。因此,数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。 一般来说,数据库中的数据具有以下两个特征 1)数据的静态特征 包括数据的基本结构,数据间的联系和对数据取值范围的约束 学生管理的例子

在学生基本信息中包括:学号,姓名,性别,出生日期,专业,家庭地址。 这些都是学生所具有的基本特征,是学生数据的基本结构。 学生选课信息中包括:学号,课程号,考试成绩等信息,其中选课信息和学生基本信息中的学号是有一定关联的,即选课信息中的学号所能选取的值必须在学生基本信息中的学号取值范围之内,只有这样,学生选课信息中所描述的学生选课情况才是有意义的。 说白一点,也就是这个学生要存在,他才会有选课信息。这个就是数据之间的联系。 最后,我们再来看看什么是数据取值范围的约束 例如,人的性别一项取值只能是男或女,课程的学分一般是大于0的整数值,而我们的考试成绩一般在0~100分范围内等,这些都是对某个列的数据取值范围进行的限制,目的是在数据库中存储正确的,有意义的数据,这就是对数据取值范围的约束 2)数据的动态特征 数据的动态特征是指对数据可以进行的操作以及操作规则。 对数据库数据的操作主要是有查询数据和更改数据,更改数据一般又包括对数据的插入,删除和修改 通常我们将数据的静态特征和动态特征的描述称为数据模型三要素。即描述数据时要包括数据的基本结构,数据的约束条件和定义在数据

数据库的基本概念

1.关系的基本操作:选择、投影、并、差、笛卡尔集。 2.声明变量的语句:declare @XXX (XXX为变量名称) 3.判断并发调度的正确性: (1)可串行性的调度:多个事务的并发执行是正确的,当且仅当其结果与某一次串行的执行这些实物的结果相同。 (2)可串行性:是并发事务调度的准则。按照这个准则,一个给定的并发调度,当且仅当他是可串行化的才认为是正确的调度。 4.事物的四个特性:原子性、一致性、隔离性和持续性。 5.定义视图: Create view <视图名称>[(列名)[,(列名)]] As <子查询> [with check option] 6.关系数据理论: 7.范式: (1)第二范式:若R∈1NF,且每一个非主属性完全依赖于码,则R∈2NF (2)第三范式:非主属性中不存在传递关系。 8.角色、权限 (1)创建角色:create role <角色名> (2)给角色授权:create <权限> on <对象类型> 对象名to 角色。 9.设计中概念模型描述什么:实体、属性、码、实体型、实体集、联系。 10.关系的完整性:实体完整性、参照完整性、用户定义的完整性。 11.读锁和写锁的定义: (1)写锁:又称“排它锁”,若事物T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事物都不能对A加任何类型的锁,直到T释放A上的锁。 (2)读锁:又称“共享锁”,若事物T对数据对象A加上S锁,则事物T可以读A但不能修改A,其他事物只能对A加S锁,而不能加X锁,直到T释放A上的S锁。 简答: 1.关系模式:判断是第几范式,分析指出主键、外键P175 例题4 2.举例说明参照完整性(外键取值的几种情况)P49例题1,例题2,例题3 3.数据库的设计步骤、任务。 (1)需求分析(2)概念结构设计(3)逻辑结构设计(4)物理结构设计 (5)数据库实施(6)数据库运行和维护 4.描述并发调度中锁的概念、作用 (1)概念:事物T对某个数据对象操作之前,先向系统发出申请,对其加锁。加锁后的事物T就对该数据对象有了一定的控制,在事物T释放它的锁之前,其他的事物不能更新此数据对象。 (2)作用:解决了事物并发过程中可能出现的丢失修改、不可重复读、读“脏”数据。

试述数据模型的概念

试述数据模型的概念,数据模型的作用和数据模型的三个要素: 答案: 模型是对现实世界的抽象。在数据库技术中,表示实体类型及实体类型间联系的模型称为“数据模型”。 数据模型是数据库管理的教学形式框架,是用来描述一组数据的概念和定义,包括三个方面: 1、概念数据模型(Conceptual Data Model):这是面向数据库用户的实现世界的数据模型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的DBMS 无关。概念数据模型必须换成逻辑数据模型,才能在DBMS中实现。 2、逻辑数据模型(Logixal Data Model):这是用户从数据库所看到的数据模型,是具体的DBMS所支持的数据模型,如网状数据模型、层次数据模型等等。此模型既要面向拥护,又要面向系统。 3、物理数据模型(Physical Data Model):这是描述数据在储存介质上的组织结构的数据模型,它不但与具体的DBMS有关,而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有起对应的物理数据模型。DBMS为了保证其独立性与可移植性,大部分物理数据模型的实现工作又系统自动完成,而设计者只设计索引、聚集等特殊结构。 数据模型的三要素: 一般而言,数据模型是严格定义的一组概念的集合,这些概念精确地描述了系统的静态特征(数据结构)、动态特征(数据操作)和完整性约束条件,这就是数据模型的三要素。 1。数据结构 数据结构是所研究的对象类型的集合。这些对象是数据库的组成成分,数据结构指对象和对象间联系的表达和实现,是对系统静态特征的描述,包括两个方面: (1)数据本身:类型、内容、性质。例如关系模型中的域、属性、关系等。 (2)数据之间的联系:数据之间是如何相互关联的,例如关系模型中的主码、外码联系等。 2 。数据操作 对数据库中对象的实例允许执行的操作集合,主要指检索和更新(插入、删除、修改)两类操作。数据模型必须定义这些操作的确切含义、操作符号、操作规则(如优先级)以及实现操作的语言。数据操作是对系统动态特性的描述。 3 。数据完整性约束 数据完整性约束是一组完整性规则的集合,规定数据库状态及状态变化所应满足的条件,以保证数据的正确性、有效性和相容性。

数据库数据模型的发展及方向

[XXXX大学XXX学院XXX班] 数据库数据模型的 发展及方向 [ ] [学号: ] [摘要:近年来,随着计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助软件工程 (CASE)、全球信息系统(GIS)、图像处理、超文本应用等领域的飞速发展及其在传统领域中应用的深化,要求数据库管理系统(database management system,DBMS)能够有效地管理复杂对象。比如在工程应用领域,一个客观复杂实体往往由数十个,甚至成百上千个简单实体组成,为了减小数据库应用系统的设计复杂度、提高其执行效率,要求DBMS不但能根据实体丰富的语义进行建模、提供有效的存储与操纵手段,以及模拟复杂实体的复杂行为,而且在逻辑上还要将一个复杂实体的表示和操纵作为一个整体看待,在操纵数据的同时考虑实体间的复合语义,即各简单实体的存在方式(独立或依赖)以及实体间的引用方式(共享或排他)。然而,传统RDBMS由于采用满足第一范式(first normal form,1NF)的平关系模型,在面对各种新的应用领域时存在以下不足。]

关键词:数据库,数据模型,扩展关系数据库,语义数据模型,面向对象的数据模型,XML数据模型 正文: 数据模型概述 数据(data)是描述事物的符号记录。模型(Model)是现实世界的抽象。数据模型(Data Model)是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。数据模型包括数据库数据的结构部分、数据库数据的操作部分和数据库数据的约束条件。 数据模型所描述的内容包括三个部分:数据结构、数据操作、数据约束。 1. 概念数据模型(Conceptual Model):这是面向数据库用户的实现世界的数据模型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的DBMS无关。概念数据模型必须换成逻辑数据模型,才能在DBMS中实现。 2. 逻辑数据模型(Logical Data Model):这是用户从数据库看到的数据模型,是具体的DBMS所支持的数据模型,如网状数据模型、层次数据模型等等。此模型既要面向用户,又要面向系统。 3. 物理数据模型(Physical Data Model):这是描述数据在存储介质上的组织结构的数据模型它不但与具体的DBMS有关,而且还和操作系统以及硬件有关。每一种逻辑数据模型在实现时都有其对应的物理数据模型。DBMS为了保证其独立性与可移植性,大部分物理数据模型的实现工作由系统自动完成,而设计者只设计索引、聚集等特殊结构。 数据模型的三要素: 一般而言,数据模型是一组严格定义的概念的集合。这些概念精确地描述了系统的静态特征(数据结构)、动态特征(数据操作)和完整性约束条件,这就是数据模型的三要素。 1. 数据结构 数据结构是所研究的对象类型的集合。这些对象是数据库的组成部分,数据结构指对象和对象间联系的表达和实现,是系统静态特征的描述,包括两个方面:(1)数据本身:类型、内容、性质。例如关系模型中的域、属性、关系等。 (2)数据之间的联系:数据之间是如何相互联系的,例如关系模型中的主码、外码等联系。 2. 数据操作 对数据库中对象的实例允许执行的操作集合,主要指检索和更新(插入、删除、修改)两类操作。数据模型必须定义这些操作的确切含义、操作符号、操作规则

数据库课程设计NBA选秀系统数据库模型

NBA选秀系统数据库模型 一、需求分析 (1)、可行性需求分析 需求分析是指准确了解和分析用户的需求,这是最困难、最费时、最复杂的一步,但也是最重要的一步。需求分析是整个设计过程的基础,它决定了以后各步设计的速度和质量。进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。 NBA作为世界上水平最高的篮球俱乐部联盟,深受广大篮球爱好者的追捧,而一年一度的NBA 选秀活动,更成为球迷关注的焦点。作为专门的NBA选秀数据库,一定会满足大众的信息需求。(2)具体的系统信息 选秀系统信息包括三个方面,其具体功能如下: A.新秀球员信息:包括球员姓名、年龄、籍贯、身高、顺位以及司职位置;新秀球员信息功能包括对球员信息的录入、删除和查询,以及被那个球队选中、选秀信息等。 B.NBA球队信息:包括球队名称、所在城市、上赛季战绩、球队主教练;NBA球队信息功能还包括对球队信息的录入、删除和查询,以及所选新秀、选秀信息等。 C.选秀信息:选秀信息包括新秀姓名、签约球队、入队时间、合同时间、合同金额、有无保障;选秀信息功能还包括各项数据的录入、删除和查询。 (3)具体的软件信息 在开发过程中,按照软件工程的步骤,从设计到开发采用了面向对象的思想和技术,采用了SQL SERVER 2008数据库服务器,运用c/s技术,使得本系统可以方便的和其他子系统进行数据交换。同时,注意从软件的图形应用界面上优化软件质量,使得本系统具有很强的可操作性。 二、概念结构设计 概念结构设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,是整个数据库设计的关键。 根据各种信息的内容以及它们之间的关系,该数据库系统的E-R图如下:

数据库系统的基本概念

1.4 数据库设计基础 考点17 数据库系统的基本概念 1、数据、数据库、数据库管理系统和数据库系统 (1)数据 数据(Data)是描述事物的符号记录。 数据:在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据,数据经过加工后就成为信息。 在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的通称。 (2)数据库 数据库(Database, DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。 数据库是一个单位或是一个应用领域的通用数据处理系统,他存储的是属于企业和事业部门、团体和个人的有关数据的集合。数据库中的数据是从全局观点出发建立的,他按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一应用,而是面向全组织,具有整体的结构化特征。 数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据

库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。 (3)数据库管理系统 数据库管理系统(Database Management System, DBMS)是数据库的机构,它是一个系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。 数据库管理系统的主要类型有4种:文件管理系统,层次数据库系统,网状数据库系统和关系数据库系统,其中关系数据库系统的应用最为广泛。 数据库管理系统是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过它访问数据库中的数据,数据库管理员也通过它进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。DBMS 提供数据定义语言DDL(Data Definition Language)与数据操作语言DML(Data Manipulation Language),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。 (4)数据库系统 数据库系统(Database System, DBS)是指引进数据库技术后的整个计算机系统,能够实现有组织地、动态地存储大量相关数据,

数据库系统复习题

复习题 第1章数据库系统基本概念 一、单项选择题 1.数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和() A.系统分析员 B.程序员 C.数据库管理员 D.操作员 2.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。 A.DBS包括DB和DBMS B.DBMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 3.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。 I.人工管理阶段 II.文件系统阶段 III.数据库阶段 A.I 和 II B.只有 II C.II 和 III D.只有 I 4.下列四项中,不属于数据库系统特点的是()。 A.数据共享 B.数据完整性 C.数据冗余度高 D.数据独立性高 5.数据库系统的数据独立性体现在()。 A.不会因为数据的变化而影响到应用程序 B.不会因为数据存储结构与数据逻辑结构的变化而影响应用程序 C.不会因为存储策略的变化而影响存储结构 D.不会因为某些存储结构的变化而影响其他的存储结构 6. .描述数据库全体数据的全局逻辑结构和特性的是()。 A.模式 B.内模式 C.外模式 7.要保证数据库的数据独立性,需要修改的是()。 A.模式与外模式 B.模式与内模式 C.三级模式之间的两层映射 D.三层模式 8.要保证数据库的逻辑数据独立性,需要修改的是()。 A.模式与外模式之间的映射 B.模式与内模式之间的映射 C.模式 D.三级模式 9.用户或应用程序看到的那部分局部逻辑结构和特征的描述是()模式。 A.模式 B.物理模式 C.子模式 D.内模式 10.下述()不是DBA数据库管理员的职责。 A.完整性约束说明 B.定义数据库模式 C.数据库安全 D.数据库管理系统设计 11.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是()。 A.层次模型 B.关系模型 C.网状模型 D.实体-关系模型 12.区分不同实体的依据是()。 A.名称 B.属性 C.对象 D.概念 13.关系数据模型是目前最重要的一种数据模型,它的三个要素分别是()。 A.实体完整性、参照完整性、用户自定义完整性 B.数据结构、关系操作、完整性约束 C.数据增加、数据修改、数据查询

(完整版)数据库系统概念题目及答案

1.为什么要研究关系规范化理论? 答关系数据库的设计直接影响着应用系统的开发、维护及其运行效率。一个不好的关系模式会导致插入异常、删除异常、数据冗余(修改异常)等问题。为此,人们提出了关系数据库规范化理论。它依据函数依赖,采用模式分解的方法,将一个低一级范式的关系模式转换为若干个高一级范式的关系模式的集合,从而消除各种异常,把不好的关系数据库模式转化为好的关系数据库模式。 2.理解并写出下列术语的含义。 函数依赖,平凡函数依赖,非平凡函数依赖, 1NF范式,BCNF范式,3NF范式,规范化,无损连接性,依赖保持性。 答: .函数依赖:设关系模式R(A 1,A 2 ,…,A n ),X,Y是R的两个属性集合, X?R(A 1,A 2 ,…,A n )及Y?R(A 1 ,A 2 ,…,A n ),R[X,Y]是关系只在属性XUY上的 投影,当任何时刻R[X,Y]中任意两个元组中的X属性值相同时,则它们的Y属性值也相同.那么称X函数决定Y,或Y函数依赖于X,记作X→Y。 .平凡函数依赖与非平凡函数依赖:当属性集合Y是属性集合X的子集时,则存在函数依赖X→Y。这说明一组属性函数决定它的所有子集。这种类型的函数依赖称为平凡函数依赖。如果X→Y且Y?X,则称X→Y是非平凡的函数依赖。 .1NF范式:定义;如果关系模式的所有属性的值域中每一个值都是不可再分解的值,则称只属于第一范式(1NF)。 lNF是关系模式的最低要求。这一限制是在关系的基本性质中提出的,每个关系模式都必须遵守。 .BCNF范式:定义:若关系模式R∈lNF且每个非主属性都完全函数依赖于R 的每个键,关系模式及属于第二范式(只E2NF)。 .3NF范式:定义: .规范化:把一个低一级范式的关系模式转换为若干个高一级范式的关系模式的集合的过程叫做规范化。 .范式:规范化理论认为,一个关系数据库中所有的关系,都应满足一定的要求,它把关系应满足的规范要求分成几级,并为每一级定义了相应的约束条件集,称为范式。 .无损连接性:设有关系模R(U)中存在函数依赖集F,R被分解为R1(U 1 ), …,R k (U k ),如果这些关系模式的自然连接与原关系模式R完全相等,则称该分 解具有无损连接性。 .依赖保持性:设有关系模式R(U)中存在函数依赖集F,R被分解加R 1(U 1 ), …,R k (U k ),且R i (U i )(1≤i≤k)所包含的函数依赖集为F i ,如果∪ 1 k F i 与F等 价,则称该分解具有依赖保持性。 3.什么叫关系模式分解?为什么要有关系模式分解?关系模式分解要遵守什么规则? 答:关系模式分解指采用投影的方式将一个关系模式R(U)分解为R 1(U 1 ),…, R k (U k ),其中不存在U i ?U j (1≤i,j≤k),并且U 1 ∪U 2 ∪…∪U k =U。关系模式分 解是规范化的主要手段,通过关系模式分解可以把一个低一级范式的关系模式分解为若干个高一级范式的关系模式的集合。关系模式分解应当具有无损连接性和依赖保持性。

相关文档