《SQL Server 2005数据库原理及应用教程第1章 数据库系统概述.ppt》由会员分享,可在线阅读,更多相关《SQL Server 2005数据库原理及应用教程第1章 数据库系统概述.ppt(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第1章章 数据库系统概述数据库系统概述1.1 概述概述1.1.11.1.1数据库技术的基本概念数据库技术的基本概念 与数据库技术密切相关的基本概念有五个,它们分别是信息、数与数据库技术密切相关的基本概念有五个,它们分别是信息、数据、数据库、数据库管理系统和数据库系统据、数据库、数据库管理系统和数据库系统 1.1.信息信息不同的领域对信息有着不同的定义,通常认为,信息是人对现实不同的领域对信息有着不同的定义,通常认为,信息是人对现实世界事务存在方式或运动状态的某种认识,是客观事物属性和世界事务存在方式或运动状态的某种认识,是客观事物属性和相互联系特性的表现,反映了客观事物的存在形式和运动状态。
2、相互联系特性的表现,反映了客观事物的存在形式和运动状态。2.2.数据数据数据是把事件的某些属性规范化后的表现形式,可以被识别,也数据是把事件的某些属性规范化后的表现形式,可以被识别,也可以被描述。可以被描述。“数据数据”的概念包括两个方面:一方面,数据内的概念包括两个方面:一方面,数据内容是事物特性的反映或描述;另一方面,数据是符号的集合。容是事物特性的反映或描述;另一方面,数据是符号的集合。信息与数据既有区别,又有联系,两者的关系是:数据是信息的信息与数据既有区别,又有联系,两者的关系是:数据是信息的载体,信息则是数据内在含义,两者可以相互转换。两者也是载体,信息则是数据内在含义,两者可以相
3、互转换。两者也是抽象与客观的关系:信息是抽象的,不随数据设备所决定的数抽象与客观的关系:信息是抽象的,不随数据设备所决定的数据表示方式而改变,而数据的表示方式及存在方式却是客观现据表示方式而改变,而数据的表示方式及存在方式却是客观现实的。实的。3.3.数据库数据库数据库数据库(Database(Database,简称,简称DB)DB)是长期存储在计算机内、是长期存储在计算机内、有组织的、统一管理的相关数据的集合。数据库能有组织的、统一管理的相关数据的集合。数据库能被各种用户共享,可以为多种应用提供服务,数据被各种用户共享,可以为多种应用提供服务,数据库不存在有害的或是不必要的冗余,数据间联系紧
4、库不存在有害的或是不必要的冗余,数据间联系紧密但数据的存储独立于使用它的程序。密但数据的存储独立于使用它的程序。4.4.数据库管理系统数据库管理系统数据库管理系统数据库管理系统(Database Management Systems(Database Management Systems,简称,简称DBMS)DBMS)是专门用于管理数据库的计算机系统是专门用于管理数据库的计算机系统软件,位于用户与操作系统之间,为用户或应用程软件,位于用户与操作系统之间,为用户或应用程序提供访问序提供访问DBDB的方法。数据库管理系统能够为数据的方法。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和
5、统计等操库提供数据的定义、建立、维护、查询和统计等操纵功能,并完成数据完整性检查、安全性检查、并纵功能,并完成数据完整性检查、安全性检查、并发控制及数据故障恢复等控制功能。发控制及数据故障恢复等控制功能。目前国内外比较流行的DBMS有Oracle,DB2,Sybase和SQL Server等。2000年,Microsoft SQL Server 2000投入市场;2005年11月,Microsoft公司又推出了最新一代的数据库产品SQL Server 2005。SQL Server是基于客户/服务器(Clinent/Server,C/S)模式的数据库系统,建立在Microsoft Window
6、s NT平台上,提供强大的企业数据库管理功能。5.5.数据库系统数据库系统数据库系统数据库系统(DBS)(DBS)是采用了数据库技术的计算机系统,它能够按是采用了数据库技术的计算机系统,它能够按照数据库的方式存储和维护数据,并且能够向应用程序提供照数据库的方式存储和维护数据,并且能够向应用程序提供数据。数据库系统通常由数据库、硬件、软件和人员四个部数据。数据库系统通常由数据库、硬件、软件和人员四个部分组成。分组成。1 1)数据库)数据库数据库的体系结构可分为两个部分:一部分是存储应用所需的数据库的体系结构可分为两个部分:一部分是存储应用所需的数据,称为物理数据库部分;一部分是描述部分,描述数据
7、数据,称为物理数据库部分;一部分是描述部分,描述数据库的各级结构。库的各级结构。2 2)硬件)硬件数据库系统建立在计算机系统之上,涉及的硬件资源主要包括数据库系统建立在计算机系统之上,涉及的硬件资源主要包括CPUCPU、内存和外部存储器等。、内存和外部存储器等。3 3)软件)软件软件主要包括操作系统、数据库管理系统和一些开发工具,如软件主要包括操作系统、数据库管理系统和一些开发工具,如带有数据库接口的各种高级语言和应用开发软件等。带有数据库接口的各种高级语言和应用开发软件等。4)4)人员人员人员是指管理、开发、使用数据库系统的所有人员,包括数据人员是指管理、开发、使用数据库系统的所有人员,包括
8、数据库管理员库管理员(DBA)(DBA)、系统分析员、应用程序员和终端用户。、系统分析员、应用程序员和终端用户。1.1.2数据库技术的应用及发展数据库技术的应用及发展进入进入2020世纪世纪8080年代后,数据库技术以前所未有的速度向前发年代后,数据库技术以前所未有的速度向前发展着,并且与各种新兴学科技术有机结合,衍生出了新一代展着,并且与各种新兴学科技术有机结合,衍生出了新一代数据库技术,如分布式数据库技术、工程数据库技术、面向数据库技术,如分布式数据库技术、工程数据库技术、面向对象数据库技术、人工智能数据库技术、并行数据库技术、对象数据库技术、人工智能数据库技术、并行数据库技术、模糊数据库
9、技术等都是这方面的实例,并广泛应用于多个领模糊数据库技术等都是这方面的实例,并广泛应用于多个领域,如计划统计、数据挖掘、信息决策等。新一代的数据库域,如计划统计、数据挖掘、信息决策等。新一代的数据库技术都具备以下几个主要特征。技术都具备以下几个主要特征。支持数据管理、对象管理和知识管理。支持数据管理、对象管理和知识管理。数据库系统必须保持或者继承原来数据库系统的技术。数据库系统必须保持或者继承原来数据库系统的技术。数据库系统必须对其他系统开放,支持数据库语言标准,支数据库系统必须对其他系统开放,支持数据库语言标准,支持标准网络协议,有良好的可移植性、可连接性、可扩展和持标准网络协议,有良好的可
10、移植性、可连接性、可扩展和互操作性。互操作性。新一代的数据库技术典型代表1分布式数据库技术2面向对象数据库技术1.1.3 Web网络数据库系统编程简介网络数据库系统编程简介 n n随着网络应用的深入,随着网络应用的深入,WebWeb数据库技术将日益显示出其重要数据库技术将日益显示出其重要地位。在这里仅简单介绍地位。在这里仅简单介绍WebWeb数据库开发的两种主要技术:数据库开发的两种主要技术:动态服务器页面技术与动态服务器页面技术与Java Java 服务器页面技术。服务器页面技术。1.1.动态服务器页面技术动态服务器页面技术动态服务器页面动态服务器页面(ASP)(ASP)是微软公司推出的一种
11、用以取代通用网关是微软公司推出的一种用以取代通用网关接口编程的技术,是一种简便易学、功能强大的服务器编程接口编程的技术,是一种简便易学、功能强大的服务器编程技术。技术。2.Java2.Java服务器页面技术服务器页面技术JavaJava服务器页面是服务器页面是SunSun公司发布的公司发布的WebWeb应用开发技术,一经推应用开发技术,一经推出,就受到了人们的广泛关注。出,就受到了人们的广泛关注。JSPJSP技术为创建高度动态的技术为创建高度动态的WebWeb应用提供了一个独特的开发环境,它能够适应市场上绝应用提供了一个独特的开发环境,它能够适应市场上绝大多数的服务器产品。大多数的服务器产品。
12、1.2 数据库技术的发展阶段数据库技术的发展阶段1.2.1 1.2.1 人工管理阶段人工管理阶段人工管理阶段人工管理阶段人工管理阶段是指计算机诞生的初期人工管理阶段是指计算机诞生的初期(20(20世纪世纪5050年代中期以前年代中期以前),数据管理在人工管理阶段具有以下几个特点。,数据管理在人工管理阶段具有以下几个特点。1.1.数据不保存数据不保存2.2.使用应用程序管理数据使用应用程序管理数据3.3.数据不共享数据不共享4.4.数据不具有独立性数据不具有独立性1.2.2 文件系统管理阶段文件系统管理阶段 n n数据管理在文件系统管理阶段中具有以下几个特点。数据管理在文件系统管理阶段中具有以下
13、几个特点。1.1.数据可以长期保存数据可以长期保存2.2.由专门的软件即文件系统管理数据由专门的软件即文件系统管理数据3.3.数据共享性差,冗余度大数据共享性差,冗余度大4.4.数据独立性差数据独立性差1.2.3 数据库系统管理阶段数据库系统管理阶段数据库系统的特点主要体现在以下几个方面。数据库系统的特点主要体现在以下几个方面。1.1.数据库中的数据是结构化的。数据库中的数据是结构化的。2.2.具有较高的数据独立性:包括两个方面,数据的物具有较高的数据独立性:包括两个方面,数据的物理独立性和数据的逻辑独立性。理独立性和数据的逻辑独立性。3.3.具有较低的数据冗余具有较低的数据冗余4.4.数据控
14、制功能数据控制功能1.3数据库系统的体系结构数据库系统的体系结构n n所有的数据库都需要有一个总体框架,即数据库系所有的数据库都需要有一个总体框架,即数据库系统的体系结构。数据库系统的体系结构可以从不同统的体系结构。数据库系统的体系结构可以从不同的层次或不同的角度来进行考察。从数据库用户来的层次或不同的角度来进行考察。从数据库用户来看,数据库系统的结构分为集中式结构看,数据库系统的结构分为集中式结构(单用户或主单用户或主从结构从结构)、分布式结构、客户、分布式结构、客户/服务器结构和并行结服务器结构和并行结构。从数据库管理系统的角度看,数据库系统通常构。从数据库管理系统的角度看,数据库系统通常
15、采用三级模式结构:外模式、模式与内模式。采用三级模式结构:外模式、模式与内模式。1.3.1 模式的概念模式的概念n n在数据模型中有在数据模型中有“型型”与与“值值”的概念。的概念。“型型”是指对某一是指对某一类数据的结构和属性的说明,是一个总框。而类数据的结构和属性的说明,是一个总框。而“值值”则是对则是对某个型的具体赋值。例如:某个型的具体赋值。例如:(张明,男,张明,男,2222,山东,山东,173)173)就就是一个值,它对应的是一个值,它对应的“型型”就是就是(姓名,性别,年龄,籍贯,姓名,性别,年龄,籍贯,身高身高)。n n“模式模式”是数据库中全体数据的逻辑结构和特征的描述,它是
16、数据库中全体数据的逻辑结构和特征的描述,它是对数据模型中型的描述,不涉及具体的值。模式的一个具是对数据模型中型的描述,不涉及具体的值。模式的一个具体的值即是该模式的一个实例。同一个模式可以有很多实例。体的值即是该模式的一个实例。同一个模式可以有很多实例。与实例相比,模式是稳定的,不会经常变动;而由于数据库与实例相比,模式是稳定的,不会经常变动;而由于数据库中的数据是处于不断更新的状态,实例是处在相对变动的情中的数据是处于不断更新的状态,实例是处在相对变动的情况。模式反映的是数据的结构和数据之间的联系,而实例反况。模式反映的是数据的结构和数据之间的联系,而实例反映的是数据库某一时刻的状态。映的是
17、数据库某一时刻的状态。n n目前,多数的数据库管理系统产品在体系结构上通常都具有目前,多数的数据库管理系统产品在体系结构上通常都具有相同的特征,即采用三级模式结构,并提供二级映像功能。相同的特征,即采用三级模式结构,并提供二级映像功能。1.3.2 三级模式结构三级模式结构n n数据库的数据模式是由外模式、模式和内模式三级模式构成。1.1.模式模式“模式模式”也称为逻辑模式或概念模式,它是数据库的总框,是也称为逻辑模式或概念模式,它是数据库的总框,是对数据库中全体数据的逻辑结构和特性的描述,是所有用户对数据库中全体数据的逻辑结构和特性的描述,是所有用户的公共数据视图。的公共数据视图。2.2.外模
18、式外模式“外模式外模式”也称为用户模式或子模式,它是对各个用户或程序也称为用户模式或子模式,它是对各个用户或程序所涉及到的数据的逻辑结构和数据特征的描述,即数据库用所涉及到的数据的逻辑结构和数据特征的描述,即数据库用户所看到的和使用的数据库的描述。外模式是数据库系统保户所看到的和使用的数据库的描述。外模式是数据库系统保证数据库安全性的一个重要手段。每个用户只能看见和访问证数据库安全性的一个重要手段。每个用户只能看见和访问自身所对应的外模式中的数据,无法看到数据库中其他用户自身所对应的外模式中的数据,无法看到数据库中其他用户模式所涉及的数据。模式所涉及的数据。3.3.内模式内模式“内模式内模式”
19、也称为存储模式或物理模式,它是对内层数据的物也称为存储模式或物理模式,它是对内层数据的物理结构和存储方式的描述,是数据在数据库文件内部的表示理结构和存储方式的描述,是数据在数据库文件内部的表示方式,它是用设备介质语言来定义的。方式,它是用设备介质语言来定义的。1.3.3 数据库模式的映像数据库模式的映像n n数据库系统提供的三级模式对应着数据的三个抽象级别,它们把数据的具体组织留给DBMS管理,使用户能逻辑地、抽象地处理数据,而不需要关心数据在计算机中的具体表示方法和存储方式。为了实现这三个层次上的联系和转换,数据库系统在这三级模式中提供了两层映像:外模式/模式映像、模式/内模式映像。正是在这
20、两层映像机制的帮助下,数据库系统中的数据才具有了较高的逻辑独立性和物理独立性。1.1.外模式外模式/模式映像模式映像外模式描述的是数据的局部逻辑结构,模式描述的是外模式描述的是数据的局部逻辑结构,模式描述的是数据的全局逻辑结构。对应于同一个模式可以有多数据的全局逻辑结构。对应于同一个模式可以有多个外模式,而对于每一个外模式,数据库系统都对个外模式,而对于每一个外模式,数据库系统都对应一个外模式应一个外模式/模式映像,它定义并保证了外模式与模式映像,它定义并保证了外模式与模式之间的对应关系。这些映像定义通常包含在各模式之间的对应关系。这些映像定义通常包含在各自的外模式中。自的外模式中。应用程序是
21、依据数据的外模式进行编写的,外模式应用程序是依据数据的外模式进行编写的,外模式/模模式映像可以保证模式的变化不会影响到应用程序的式映像可以保证模式的变化不会影响到应用程序的执行,实现了数据与程序的逻辑独立,即数据的逻执行,实现了数据与程序的逻辑独立,即数据的逻辑独立性。辑独立性。2.2.模式模式/内模式映像内模式映像数据库中只有一个模式,也只有一个内模式,所以模式数据库中只有一个模式,也只有一个内模式,所以模式/内模式内模式映像是唯一的,它定义了数据库全局逻辑结构与存储结构之映像是唯一的,它定义了数据库全局逻辑结构与存储结构之间的对应关系。映像定义通常包含在模式描述中。当数据库间的对应关系。映
22、像定义通常包含在模式描述中。当数据库的存储结构改变时的存储结构改变时(例如由原来的顺序存储改为链式存储例如由原来的顺序存储改为链式存储),模式模式/内模式映像也必须做出相应的改变,使得模式保持不内模式映像也必须做出相应的改变,使得模式保持不变,保证了数据与程序的物理独立,即数据的物理独立性。变,保证了数据与程序的物理独立,即数据的物理独立性。同外模式同外模式/模式映像一样,模式模式映像一样,模式/内模式映像的调整也是由数内模式映像的调整也是由数据库管理员(据库管理员(DBADBA)来实现的。)来实现的。数据库的二级映像保证了数据库外模式的稳定性,从而从底层数据库的二级映像保证了数据库外模式的稳
23、定性,从而从底层保证了应用程序的稳定性。数据与程序之间的独立性使得数保证了应用程序的稳定性。数据与程序之间的独立性使得数据的存取由数据库管理系统管理,用户不必考虑存取路径等据的存取由数据库管理系统管理,用户不必考虑存取路径等细节,从而简化应用程序的编写,较好地减少了应用程序的细节,从而简化应用程序的编写,较好地减少了应用程序的维护和修改。维护和修改。1.4 数据模型数据模型根据数据模型应用的不同目的,数据模型可以分为以下两类。根据数据模型应用的不同目的,数据模型可以分为以下两类。第一类是数据模型独立于任何计算机系统实现的,如实体联系模第一类是数据模型独立于任何计算机系统实现的,如实体联系模型,
24、这种模型完全不涉及信息在计算机系统中的表示,只是用型,这种模型完全不涉及信息在计算机系统中的表示,只是用来描述某个特定组织所关心的信息结构,主要用于数据库设计,来描述某个特定组织所关心的信息结构,主要用于数据库设计,称为概念模型,也称为信息模型。称为概念模型,也称为信息模型。第二类数据模型是直接面向数据库中的数据逻辑结构,主要包括第二类数据模型是直接面向数据库中的数据逻辑结构,主要包括关系、网状、层次、面向对象等模型。这类模型涉及到计算机关系、网状、层次、面向对象等模型。这类模型涉及到计算机系统,主要用于数据库管理系统的实现,称为结构数据模型系统,主要用于数据库管理系统的实现,称为结构数据模型
25、(简称为数据模型)。数据模型有严格的形式定义,以便于机(简称为数据模型)。数据模型有严格的形式定义,以便于机器上的实现,它通常有一组严格定义了语法和语义的语言,用器上的实现,它通常有一组严格定义了语法和语义的语言,用户可以使用它来定义、操纵数据库中的数据。数据模型是现实户可以使用它来定义、操纵数据库中的数据。数据模型是现实世界的第二层抽象,是数据库系统的核心和基础。世界的第二层抽象,是数据库系统的核心和基础。1.4.1 现实世界的信息化过程现实世界的信息化过程n n人们从对现实生活中事物特性的认识,到计算机数据的具体表示,要经历三个阶段:现实世界、信息世界和机器世界,如图所示 1.4.2 概念
26、模型概念模型n n概念模型是对现实世界的抽象反映,它不依赖于具体的计算机系统,是现实世界到机器世界的一个中间层次。n n概念模型一方面应该具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识,另一方面它还应该简单、清晰、易于用户理解。1 1概念模型的基本概念概念模型的基本概念在概念模型中主要涉及的概念有在概念模型中主要涉及的概念有(1 1)实体()实体(ENTITYENTITY)(2 2)属性()属性(ATTRIBUTEATTRIBUTE)(3 3)码()码(KEYKEY)(4 4)域()域(DOMAINDOMAIN)(5 5)实体型()实体型(ENTITY TYPEENTITY
27、TYPE)(6 6)实体集()实体集(ENTITY SETENTITY SET)(7 7)联系()联系(RELATIONSHIPRELATIONSHIP)2实体集之间的联系两个实体集之间的联系有三种,分别是一对一联系、一对多联系、多对多联系。(1)一对一联系(11)如果对于实体集A中的每一个实体,在实体集B中至多有一个实体与之联系,反之亦然。则称实体集A与实体集B具有一对一联系,记为1:1。n n(2 2)一对多联系)一对多联系(1(1mm)n n如果对于实体集如果对于实体集A A中的每一个实体,实体集中的每一个实体,实体集B B中有中有mm个实体个实体(mm0)0)与之联系;反过来,对于实体
28、集与之联系;反过来,对于实体集B B中中的每一个实体,实体集的每一个实体,实体集A A中却至多有一个实体与之中却至多有一个实体与之联系,则称实体集联系,则称实体集A A与实体集与实体集B B具有一对多联系,记具有一对多联系,记为为1:1:mm。n n(3)(3)多对多联系多对多联系(mmn n)。对于实体集。对于实体集A A中的每一个实中的每一个实体,实体集体,实体集B B中有中有n n个实体个实体(n n0)0)与之联系;反过来,与之联系;反过来,对于实体集对于实体集B B中的每一个实体,实体集中的每一个实体,实体集A A中也有中也有mm个个实体实体(mm0)0)与之联系,则称实体集与之联系
29、,则称实体集A A与实体集与实体集B B具有具有多对多联系,记为多对多联系,记为mmn n。n n实例集之间的联系可以用图形方式进行表示,如图所示。3实体集内部之间的联系以上讨论的是两个不同的实体集之间的关系。实际上,同一实体集内的各实体之间也具有三种联系,分别是一对一的联系(1:1)、一对多联系(1:m)和多对多联系(m:n)。4 4概念模型的表示方法概念模型的表示方法概念模型的表示方法有很多,常用的有实体联系法、扩充实概念模型的表示方法有很多,常用的有实体联系法、扩充实体联系法、面向对象模型法和谓词模型法等。其中最为著体联系法、面向对象模型法和谓词模型法等。其中最为著名也最常用的是名也最常
30、用的是P.P.S.ChenP.P.S.Chen 于于19761976年提出的实体联系方年提出的实体联系方法。该方法用法。该方法用E ER R图来描述现实世界的概念模型,描述出的图来描述现实世界的概念模型,描述出的概念模型称为实体联系模型,简称为概念模型称为实体联系模型,简称为ERER模型。模型。ERER模型是一个面向问题的概念模型,即用简单的图形方式模型是一个面向问题的概念模型,即用简单的图形方式(E-(E-R R图图)描述现实世界中的数据。这种描述不涉及数据在数据库描述现实世界中的数据。这种描述不涉及数据在数据库中表示和存取方法,非常接近人的思维方式,是各种数据模中表示和存取方法,非常接近人
31、的思维方式,是各种数据模型的共同基础。型的共同基础。ERER模型中提供了表示实体、实体属性和实体间的联系的方法。模型中提供了表示实体、实体属性和实体间的联系的方法。在在E-RE-R图中分别使用长方形、椭圆形和菱形表示实体、属性图中分别使用长方形、椭圆形和菱形表示实体、属性和联系。和联系。n n如果概念模型中涉及的实体带有较多的属性而使实体联系图如果概念模型中涉及的实体带有较多的属性而使实体联系图不清晰,设计人员可以将实体联系图分成两部分,一部分是不清晰,设计人员可以将实体联系图分成两部分,一部分是实体及其属性图,另一部分是实体及其联系图。实体及其属性图,另一部分是实体及其联系图。1.4.3 数
32、据模型及其组成要素数据模型及其组成要素n n数据模型是严格定义的一组概念的集合。这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件,是数据库中用来对现实世界进行抽象的工具,是数据库系统的核心与基础,是描述数据的结构以及定义在其上的操作和约束条件。n n数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成。1.1.数据结构数据结构数据结构是研究存储在数据库中的对象类型的集合,这些对象数据结构是研究存储在数据库中的对象类型的集合,这些对象类型是数据库的组成部分。它们包括两类,一类是与数据类类型是数据库的组成部分。它们包括两类,一类是与数据类型、内容、性质有关的对象,例如网状模
33、型中的数据项、记型、内容、性质有关的对象,例如网状模型中的数据项、记录,关系模型中的域、属性、关系等;一类是与数据之间联录,关系模型中的域、属性、关系等;一类是与数据之间联系有关的对象,例如网状模型中的系型。数据结构是对系统系有关的对象,例如网状模型中的系型。数据结构是对系统静态特性的描述。静态特性的描述。2.2.数据操作数据操作数据操作是指对数据库中各种数据对象的实例允许执行的操作数据操作是指对数据库中各种数据对象的实例允许执行的操作的集合,数据操作包括操作和与操作有关的规则两部分。数的集合,数据操作包括操作和与操作有关的规则两部分。数据库中的数据操作主要有数据检索和数据更新(即插入、删据库
34、中的数据操作主要有数据检索和数据更新(即插入、删除或修改数据的操作)两大类。数据模型必须要定义这些操除或修改数据的操作)两大类。数据模型必须要定义这些操作的确切涵义、操作符号、操作规则以及实现操作的语言等。作的确切涵义、操作符号、操作规则以及实现操作的语言等。数据操作是对系统动态特性的描述。数据操作是对系统动态特性的描述。3.3.数据的完整性约束条件数据的完整性约束条件数据的完整性约束条件是一组完整性规则的集合。完整性规则数据的完整性约束条件是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合
35、数据模型的数据库状态以及状态的变化,以保用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。证数据的正确、有效和相容。1.5三种常见的数据模型三种常见的数据模型n n目前数据库领域中较常用的数据模型是层次模型、网状模型、关系模型和面向对象模型。n n层次模型和网状模型统称为非关系模型。非关系模型的数据库系统在20世纪70年代至80年代占据了主导地位,尽管被后来发展的关系模型数据库系统取代,但目前仍有不少层次数据库系统或网状数据库系统在使用。1.5.1层次模型层次模型n n层次模型是用树型结构表示实体及其联系的数据模型,如一个单位的机构设置。n n数据库的数据模型如果满
36、足以下两个条件,就称为层次模型。(1)有且仅有一个结点无父结点,这个结点称为根结点。(2)其他结点有且仅有一个双亲。层次模型的优点体现在下面几个方面。(1)比较简单容易使用。(2)对于实体联系固定且预先定义好的系统采用层次模型优于关系模型。(3)层次模型提供了良好的完整性支持。层次模型的缺点体现在下面几个方面。(1)层次数据模型处理非层次联系时比较麻烦,只能通过引入冗余结点或虚拟结点的方法来解决。(2)查询子结点必须通过父结点。(3)对插入和删除有较多的限制。1.5.2网状模型网状模型n n使用网状结构来表示实体及实体之间联系的模型称使用网状结构来表示实体及实体之间联系的模型称为网状模型。为网
37、状模型。n n数据库的数据模型如果满足以下两个条件,就称为数据库的数据模型如果满足以下两个条件,就称为网状模型。网状模型。(1 1)一个结点可以有多于一个的双亲结点。)一个结点可以有多于一个的双亲结点。(2 2)可以有一个以上的结点没有双亲结点。)可以有一个以上的结点没有双亲结点。n n网状模型的优点有以下几点。网状模型的优点有以下几点。(1 1)能够更为直接地描述现实世界,如一个结点可)能够更为直接地描述现实世界,如一个结点可以有多个双亲。以有多个双亲。(2 2)具有良好的性能,存取效率较高。)具有良好的性能,存取效率较高。网状模型的缺点有以下几点。网状模型的缺点有以下几点。(1 1)网状模
38、型结构比较复杂,而且随着应用环境的)网状模型结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于数扩大,数据库的结构就变得越来越复杂,不利于数据库的扩充。据库的扩充。(2 2)操作复杂,不利于用户掌握。)操作复杂,不利于用户掌握。(3 3)编写应用程序比较复杂,程序员必须熟悉数据)编写应用程序比较复杂,程序员必须熟悉数据库的逻辑结构,要为访问数据设置存取路径,加重库的逻辑结构,要为访问数据设置存取路径,加重了开发应用程序的负担。了开发应用程序的负担。1.5.3关系模型关系模型n n关系模型是目前数据模型中最为重要的数据模型,关系模型是目前数据模型中最为重要的数据模型,当前
39、使用的数据库系统大多是以关系模型作为数据当前使用的数据库系统大多是以关系模型作为数据的组织方式的关系数据库系统。数据库领域当前的的组织方式的关系数据库系统。数据库领域当前的研究工作也都是以关系方法为基础的。研究工作也都是以关系方法为基础的。1.1.关系模型的相关概念关系模型的相关概念n n在现实世界中,人们经常用表格形式表示数据信息。在现实世界中,人们经常用表格形式表示数据信息。但是日常生活中使用的表格往往比较复杂。在关系但是日常生活中使用的表格往往比较复杂。在关系模型中基本数据结构被限制为二维表格。因此,在模型中基本数据结构被限制为二维表格。因此,在关系模型中,数据在用户观点下的逻辑结构就是
40、一关系模型中,数据在用户观点下的逻辑结构就是一张二维表。每一张二维表称为一个关系张二维表。每一张二维表称为一个关系(Relation)(Relation),二维表中存放了两类数据:实体本身的数据和实,二维表中存放了两类数据:实体本身的数据和实体间的联系。体间的联系。关系模型中的一些基本概念。(1)关系(RELATION)(2)元组(TUPLE)(3)属性(ATTRIBUTE)(4)域(DOMAION)(5)码(KEY)2.2.关系模型的存储结构关系模型的存储结构在关系数据模型中,实体及实体之间的联系都用二维表来表示,在关系数据模型中,实体及实体之间的联系都用二维表来表示,在数据库的物理组织中,
41、表以文件形式存储。在数据库的物理组织中,表以文件形式存储。3.3.关系模型的优缺点关系模型的优缺点关系模型具有下列优点。关系模型具有下列优点。(1 1)关系模型结构简单,概念单一,易学易用。)关系模型结构简单,概念单一,易学易用。(2 2)关系模型是数学化的模型,它是建立在严格的数据理论)关系模型是数学化的模型,它是建立在严格的数据理论基础上的,如集合论、数据逻辑、关系方法、规范化理论等,基础上的,如集合论、数据逻辑、关系方法、规范化理论等,这些理论是关系模型的基础,是指导关系模型数据库建立和这些理论是关系模型的基础,是指导关系模型数据库建立和应用的原则。应用的原则。(3 3)关系模型的存取路
42、径对用户透明。)关系模型的存取路径对用户透明。关系模型的缺点体现在下面两点。关系模型的缺点体现在下面两点。(1 1)关系模型的查询效率往往不如非关系模型,必须对用户)关系模型的查询效率往往不如非关系模型,必须对用户的查询请求进行优化,以提高性能,这在一定程度上增加了的查询请求进行优化,以提高性能,这在一定程度上增加了用户的负担,并对用户的要求比较高。用户的负担,并对用户的要求比较高。(2 2)关系模型在处理一些复杂数据时有一定的局限性,如计)关系模型在处理一些复杂数据时有一定的局限性,如计算机辅助设计数据、多媒体数据,需要和其他一些新技术相算机辅助设计数据、多媒体数据,需要和其他一些新技术相结合使用。结合使用。