《SQL-Server数据库应用开发技术教学课件全套电子教案汇总整本书课件最全教学教程完整版教案.ppt》由会员分享,可在线阅读,更多相关《SQL-Server数据库应用开发技术教学课件全套电子教案汇总整本书课件最全教学教程完整版教案.ppt(809页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SQLServer数据库应用开发技术第第1 1章章 数据库基础数据库基础知识技能目标:知识技能目标:1掌握数据库系统的基本概念。掌握数据库系统的基本概念。2理解关系数据模型,掌握关系的基本概念。理解关系数据模型,掌握关系的基本概念。3理解数据库系统结构。理解数据库系统结构。引导案例:引导案例:某院校教务管理系统,具有选课管理功能、成绩管理某院校教务管理系统,具有选课管理功能、成绩管理功能、学生信息、课程信息等基本信息的管理功能。功能、学生信息、课程信息等基本信息的管理功能。通过这一系统,学生可以选课、查询成绩,教师可以通过这一系统,学生可以选课、查询成绩,教师可以登记成绩、统计成绩,教务人员可
2、以进行选课管理、成登记成绩、统计成绩,教务人员可以进行选课管理、成绩管理以及对学生、课程等基本信息的管理。绩管理以及对学生、课程等基本信息的管理。这是利用数据库应用开发技术设计开发的一个数据库这是利用数据库应用开发技术设计开发的一个数据库应用系统。应用系统。本课程学习的目的就是要掌握数据库应用开发技术,本课程学习的目的就是要掌握数据库应用开发技术,达到能够设计开发数据库应用系统的目的。为此,本章达到能够设计开发数据库应用系统的目的。为此,本章先介绍必要的数据库基础知识。先介绍必要的数据库基础知识。第第1 1章章 数据库基础数据库基础第第1 1章章 数据库基础数据库基础1.1 1.1 数据库应用
3、系统实例演示数据库应用系统实例演示1.2 1.2 数据与数据管理数据与数据管理1.3 1.3 数据库与数据库系统数据库与数据库系统1.4 1.4 数据模型数据模型1.5 1.5 关系模型关系模型1.6 1.6 数据库系统结构数据库系统结构小结小结1.1 1.1 数据库应用系统实例演示数据库应用系统实例演示启动教务管理系统,登录成功后,进入系统主界面。启动教务管理系统,登录成功后,进入系统主界面。返回目录1.1 1.1 数据库应用系统实例演示数据库应用系统实例演示1.1 1.1 数据库应用系统实例演示数据库应用系统实例演示教务人员可以进行学生、课程等基本信息的管理,进行教务人员可以进行学生、课程
4、等基本信息的管理,进行选课管理,成绩管理等。选课管理,成绩管理等。下图为学生信息录入界面。下图为学生信息录入界面。返回目录1.1 1.1 数据库应用系统实例演示数据库应用系统实例演示学生进入系统后,可以进行选课,可以查询自己所选课学生进入系统后,可以进行选课,可以查询自己所选课程,可以查询成绩。程,可以查询成绩。下图为:下图为:学生选课界面学生选课界面 学生个人选课信息查询界面学生个人选课信息查询界面 返回目录1.1 1.1 数据库应用系统实例演示数据库应用系统实例演示教师进入系统后,可以录入成绩,进行成绩查询与统教师进入系统后,可以录入成绩,进行成绩查询与统计等。计等。下图为成绩录入界面。下
5、图为成绩录入界面。返回目录1.1 1.1 数据库应用系统实例演示数据库应用系统实例演示开发这样一个系统,需要具备数据库基本概开发这样一个系统,需要具备数据库基本概念和知识,理解关系数据库基本原理,掌握数念和知识,理解关系数据库基本原理,掌握数据库设计方法,掌握数据库实现技术和应用程据库设计方法,掌握数据库实现技术和应用程序开发技术。序开发技术。因此,我们在本章先来介绍有关数据库的基因此,我们在本章先来介绍有关数据库的基本概念和知识。本概念和知识。返回目录1.2 1.2 数据与数据管理数据与数据管理1.2.1信息与数据信息与数据1信息信息信息是现实世界的客观事物在人脑中的反映,是以各种方式传播的
6、关于某一事物的消息、情报、知识。2数据数据数据是描述客观事物的符号记录。数据的表现形式数字、文字、图形、图像、声音等。3.数据和信息的联系与区别。数据和信息的联系与区别。数据是具体的,信息是抽象的。数据是信息的载体,载荷信息的物理符号,是信息的具体表现形式;信息依靠数据来表达,是数据所包含的意义。返回目录1.2 1.2 数据与数据管理数据与数据管理1.2.2数据管理及其发展数据管理及其发展对信息或者说数据进行收集、存储、加工和传播的一系列活对信息或者说数据进行收集、存储、加工和传播的一系列活动总称为数据处理或信息处理。动总称为数据处理或信息处理。在数据处理的一系列活动中,数据的收集、组织、存贮
7、、分类在数据处理的一系列活动中,数据的收集、组织、存贮、分类、检索和维护等活动称为数据管理。、检索和维护等活动称为数据管理。数据管理技术的发展经历了三个阶段:数据管理技术的发展经历了三个阶段:人工管理阶段人工管理阶段 文件系统阶段文件系统阶段数据库系统阶段。数据库系统阶段。返回目录1.2 1.2 数据与数据管理数据与数据管理1.2.2数据管理及其发展数据管理及其发展(1)人工管理阶段)人工管理阶段 自由管理阶段自由管理阶段特点:特点:l数据不在计算机内长期保存数据不在计算机内长期保存l应用程序管理数据,数据不独立,完全依赖于程序应用程序管理数据,数据不独立,完全依赖于程序l数据不共享数据不共享
8、返回目录1.2 1.2 数据与数据管理数据与数据管理1.2.2数据管理及其发展数据管理及其发展(2)文件系统阶段)文件系统阶段特点:特点:l数据可以以文件的形式长期存储在计算机里数据可以以文件的形式长期存储在计算机里l由专门的软件即文件系统进行数据管理由专门的软件即文件系统进行数据管理l数据的独立性差数据的独立性差l数据共享性差,冗余度大数据共享性差,冗余度大 返回目录1.2 1.2 数据与数据管理数据与数据管理1.2.2数据管理及其发展数据管理及其发展(3)数据库系统阶段)数据库系统阶段特点:特点:l整体数据结构化整体数据结构化在数据库系统中,数据不再是面向特定的某个或某些应用,而是面向整个
9、系统,实现了整体数据结构化。l数据共享数据共享数据可以被多个用户、多种应用、多种语言所共同享用。l可控冗余度可控冗余度由于数据统一组织,共同使用,因此易于避免重复,减少和控制数据的冗余。返回目录1.2 1.2 数据与数据管理数据与数据管理1.2.2数据管理及其发展数据管理及其发展(3)数据库系统阶段)数据库系统阶段特点:特点:l数据独立性高数据独立性高数据的组织和存储方法与应用程序互不依赖、彼此独立,简化应用程序的设计维护的工作量。l统一的数据控制功能统一的数据控制功能全部数据由数据库管理系统统一管理和控制。提供了数据安全性控制、数据完整性控制、并发控制和数据恢复等四方面的数据控制功能。返回目
10、录1.3 1.3 数据库与数据库系统数据库与数据库系统1.3.1数据库数据库数据库:数据库:DataBase DB 是长期存储在计算机中的、有组织的、可共享的数据是长期存储在计算机中的、有组织的、可共享的数据集合:集合:按照一定的数据模型组织、描述和存储的;按照一定的数据模型组织、描述和存储的;具有较小的数据冗余度;具有较小的数据冗余度;较高的数据独立性和易扩充性;较高的数据独立性和易扩充性;能够为多个用户所共享。能够为多个用户所共享。返回目录1.3 1.3 数据库与数据库系统数据库与数据库系统1.3.2数据库管理系统数据库管理系统数据库管理系统:数据库管理系统:DataBaseManagem
11、entSystem DBMS是位于用户和操作系统之间的数据管理软件。是位于用户和操作系统之间的数据管理软件。功能:功能:(1)数据定义)数据定义 (2)数据操纵)数据操纵 (3)数据库的运行控制)数据库的运行控制 (4)数据库的建立与维护)数据库的建立与维护返回目录1.3 1.3 数据库与数据库系统数据库与数据库系统1.3.3数据库系统数据库系统数据库系统数据库系统 DataBaseSystemDBS是指在计算机系统中引入数据库后的系统。是指在计算机系统中引入数据库后的系统。数据库系统数据库系统 硬件系统硬件系统 CPU、内存、外存及输入、内存、外存及输入/输出设备等输出设备等 软件系统软件系
12、统 系统软件:系统软件:OS DBMS 核心核心 应用软件应用软件 数据数据 是构成数据库的主体,是管理对象是构成数据库的主体,是管理对象 用户用户 最终用户、应用程序员和数据库管理员最终用户、应用程序员和数据库管理员返回目录1.3 1.3 数据库与数据库系统数据库与数据库系统1.3.3数据库系统数据库系统数据库系统组成数据库系统组成应用软件 用户用户用户硬件数据库管理系统操作系统数据库返回目录1.4 1.4 数据模型数据模型数据库是按照一定的数据模型组织存储在一数据库是按照一定的数据模型组织存储在一起的数据集合。起的数据集合。数据模型是对现实世界的模拟,反映现实世数据模型是对现实世界的模拟,
13、反映现实世界中的客观事物以及事物间的联系。界中的客观事物以及事物间的联系。数据模型是数据库的基础和核心。数据模型是数据库的基础和核心。返回目录1.4 1.4 数据模型数据模型1.4.1现实世界的数据描述现实世界的数据描述现实世界中的客观事物,不能现实世界中的客观事物,不能直接被计算机处理,必须先转直接被计算机处理,必须先转换成计算机能够处理的数据。换成计算机能够处理的数据。从客观事物到计算机里的数据从客观事物到计算机里的数据表示经历了三个领域表示经历了三个领域:返回目录信息世界(概念模型)机器世界(数据模型)现实世界经过人脑的第一次抽象第二次抽象1.4 1.4 数据模型数据模型1.4.2概念模
14、型概念模型1基本概念基本概念实体实体:客观存在并可相互区别的事物称为实体。例如,一个公司,一门课程,一名学生、一次比赛。属性属性:实体所具有的每个特性称为实体的属性。例如,学生的学号、姓名、性别。域域:属性的取值范围称为该属性的域。例如,学号的域为数字字符构成的字符串集合,性别的域为(男,女)。实体型:实体型:具有相同属性的实体称为同型实体,它可以用实体名及其属性名的集合来描述,称为实体型。例如,学生(学号,姓名,性别,出生日期,班级)返回目录1.4 1.4 数据模型数据模型1.4.2概念模型概念模型1基本概念基本概念实体集:实体集:同型实体的集合称为实体集。例如,所有的学生就是一个实体集。码
15、:码:能够唯一标识实体集中每个实体的属性或属性集称为实体的码。例如,学号是学生实体的码。联系:联系:在现实世界中,事物内部及事物之间是普遍联系的,这些联系在信息世界中表现为实体型内部各属性之间的联系以及实体型之间的联系。返回目录1.4 1.4 数据模型数据模型1.4.2概念模型概念模型1基本概念基本概念两个实体型之间的联系可以分为三类:两个实体型之间的联系可以分为三类:(1)一对一联系()一对一联系(1:1)例如,一个班级只有一个正班长,一个班长也只能在一个班级中任职,则班长与班级之间具有一对一的联系。(2)一对多联系()一对多联系(1:n)例如,一个人可以有多个移动电话号码,但一个电话号码只
16、能卖给一个人。人与移动电话号码之间的联系就是一对多的联系。(3)多对多联系()多对多联系(m:n)例如,一门课程同时可以由若干学生选修,而一个学生同时也可以选修若干门课程,课程与学生之间的联系是多对多的联系。返回目录1.4 1.4 数据模型数据模型1.4.2概念模型概念模型2概念模型及其表示方法概念模型及其表示方法概念模型描述实体、实体的属性、实体间的联系,是现实世概念模型描述实体、实体的属性、实体间的联系,是现实世界的第一级抽象,反映现实世界客观事物及事物间的联系。界的第一级抽象,反映现实世界客观事物及事物间的联系。概念模型的表示方法很多,最常用的是实体概念模型的表示方法很多,最常用的是实体
17、-联系方法联系方法(Entity-Relationship),该方法用),该方法用E-R图来表示概念模型。图来表示概念模型。返回目录1.4 1.4 数据模型数据模型1.4.2概念模型概念模型2概念模型及其表示方法概念模型及其表示方法 在在E-RE-R图中规定:图中规定:实体型:用矩形表示,矩形框内写明实体名。实体型:用矩形表示,矩形框内写明实体名。属性:属性:用椭圆表示,椭圆内写明属性名,用无向边将属性与实用椭圆表示,椭圆内写明属性名,用无向边将属性与实 体连起来。体连起来。联系:联系:用菱形表示,菱形框内写明联系名,用无向边与有关实用菱形表示,菱形框内写明联系名,用无向边与有关实 体连接起来
18、,同时在无向边上注明联系类型。体连接起来,同时在无向边上注明联系类型。需要注意的是,联系也是具有属性的,也要用无向边与联系连接起需要注意的是,联系也是具有属性的,也要用无向边与联系连接起来。来。返回目录1.4 1.4 数据模型数据模型E-R图示例图示例学生学号姓名性别出生日期课程课程号课程名学分学时mn课程学生选课1.4 1.4 数据模型数据模型n1班级班名班主任专业nm课程课程号课程名学分学时学生学号姓名性别出生日期选课属于1.4 1.4 数据模型数据模型1.4.3数据模型数据模型数据模型是概念模型的数据化,它描述数据以及数据间的联数据模型是概念模型的数据化,它描述数据以及数据间的联系,是现
19、实世界的第二级抽象。数据模型同样反映客观事物及事系,是现实世界的第二级抽象。数据模型同样反映客观事物及事物间的联系,同时考虑了在计算机上的具体实现,是在数据库中物间的联系,同时考虑了在计算机上的具体实现,是在数据库中真正实现的模型。真正实现的模型。数据模型有三个组成要素:数据结构、数据操作和完整性约束。数据模型有三个组成要素:数据结构、数据操作和完整性约束。不同的数据结构决定不同的数据模型。不同的数据结构决定不同的数据模型。返回目录1.4 1.4 数据模型数据模型1.4.3数据模型数据模型目前,成熟地应用在数据库技术中的数据模型有层次模型、网状模型和关系模型,面向对象数据模型正在研究发展中。(
20、1 1)层次模型)层次模型 层次模型的数据结构是层次结构。层次模型的数据结构是层次结构。层次结构的特点:层次结构的特点:l只有一个根结点无父结点只有一个根结点无父结点l其它结点有且只有一个父结点其它结点有且只有一个父结点 返回目录1.4 1.4 数据模型数据模型1.4.3数据模型数据模型 (2 2)网状模型)网状模型 网状模型的数据结构是网状结构。网状模型采用网状结构表网状模型的数据结构是网状结构。网状模型采用网状结构表 示事物及事物间联系。示事物及事物间联系。网状结构的特点:网状结构的特点:l允许多个结点无父结点允许多个结点无父结点l允许结点有多个父结点允许结点有多个父结点l允许结点间有多个
21、联系允许结点间有多个联系 返回目录1.4 1.4 数据模型数据模型1.4.3数据模型数据模型 (3 3)关系模型)关系模型关系模型的数据结构是关系。关系是规范的二维表。关系模型关系模型的数据结构是关系。关系是规范的二维表。关系模型用关系表示事物及事物间联系。用关系表示事物及事物间联系。关系模型建立在严格的数据概念基础上,数据结构简单、概念关系模型建立在严格的数据概念基础上,数据结构简单、概念单一,符合人们的思维习惯,存取路径对用户透明,具有更高的单一,符合人们的思维习惯,存取路径对用户透明,具有更高的数据独立性、更好的安全保密性。缺点是查询效率不高。数据独立性、更好的安全保密性。缺点是查询效率
22、不高。关系模型是目前使用最为广泛的一种数据模型,关系数据库是关系模型是目前使用最为广泛的一种数据模型,关系数据库是当前市场上最为流行的数据库。当前市场上最为流行的数据库。SQL SERVER 2005就是基于关系模型的数据库管理系统。就是基于关系模型的数据库管理系统。返回目录1.5 1.5 关系模型关系模型1.5.1关系关系关系模型的数据结构是关系。关系模型用关系表示实体以及实体间的联系。1关系的概念关系的概念从用户的角度看,关系就是一张二维表,由行和列组成。例:学生关系学生关系学学 号号姓姓 名名性性 别别出生日期出生日期入学时间入学时间班班 级级20070101101李李 颖颖女女1989
23、-9-282007-9-1jy07120070101102孙孙 雷雷男男1988-5-62007-9-1jy07120070101103郑郑涛琴涛琴女女1988-6-232007-9-1jy07120070101104刘刘 刚刚男男1986-12-12007-9-1jy071返回目录1.5 1.5 关系模型关系模型1.5.1关系关系1.关系的概念关系的概念关系:一张二维表。关系:一张二维表。元组:表中的一行即为一个元组。元组:表中的一行即为一个元组。属性:表中的一列即为一个属性;给每一个属性起的名称即为属属性:表中的一列即为一个属性;给每一个属性起的名称即为属性名。性名。域:属性的取值范围即为
24、域。如性别域为(男,女)。域:属性的取值范围即为域。如性别域为(男,女)。分量:元组中的一个属性值。分量:元组中的一个属性值。返回目录1.5 1.5 关系模型关系模型1.5.1关系关系1.关系的概念关系的概念候选码:关系中能够唯一地标识一个元组的属性或属性组。候选码:关系中能够唯一地标识一个元组的属性或属性组。候选码也称为候选键,或候选关键字。候选码也称为候选键,或候选关键字。一个关系上可以有多个候选码,如学号、姓名一个关系上可以有多个候选码,如学号、姓名+性别性别主码:若一个关系中有多个候选码,可选择其中一个作为主码。主码:若一个关系中有多个候选码,可选择其中一个作为主码。主码也称主键,或者
25、关键字。主码也称主键,或者关键字。一个关系有且只有一个主码,如学号。一个关系有且只有一个主码,如学号。主属性:包含在主码中的各属性,如学号。主属性:包含在主码中的各属性,如学号。非主属性:不包含在任何候选码中的属性。非主属性:不包含在任何候选码中的属性。返回目录1.5 1.5 关系模型关系模型1.5.1关系关系1.关系的概念关系的概念外码:如果一个属性或属性组不是所在关系的主码,但它与另一外码:如果一个属性或属性组不是所在关系的主码,但它与另一关系的主码对应,则称这一属性或属性组为所在关系的外码。外码也关系的主码对应,则称这一属性或属性组为所在关系的外码。外码也称为外键,或外关键字。例如,学生
26、关系中的班级。称为外键,或外关键字。例如,学生关系中的班级。关系模式:是对关系的描述,通常表示为:关系模式:是对关系的描述,通常表示为:关系名(属性名关系名(属性名1,属性名,属性名2,属性名,属性名n)。)。例如,学生(学号,姓名,性别,出生日期,入学时间,班级)例如,学生(学号,姓名,性别,出生日期,入学时间,班级)关系模式是型,关系是它的值。关系模式是型,关系是它的值。关系数据库模式:一组关系模式的集合。关系数据库模式:一组关系模式的集合。关系数据库模式是关系数据库的型,关系数据库的内容是关系数关系数据库模式是关系数据库的型,关系数据库的内容是关系数据库的值。据库的值。返回目录1.5 1
27、.5 关系模型关系模型1.5.1关系关系2关系的性质关系的性质l关系中的任一属性必须是原子的,它不可再分,也就是不允许关系中的任一属性必须是原子的,它不可再分,也就是不允许在二维表中出现表中套表的现象。在二维表中出现表中套表的现象。l同一属性的各个值应是同类型的数据,来自同一个域。同一属性的各个值应是同类型的数据,来自同一个域。l不同属性的值可以来自同一个域。因此不同的属性应起不同的不同属性的值可以来自同一个域。因此不同的属性应起不同的属性名属性名l各属性的排列顺序无关紧要,即属性的顺序可以任意交换。各属性的排列顺序无关紧要,即属性的顺序可以任意交换。l元组的顺序无关紧要,各元组的顺序可以交换
28、。元组的顺序无关紧要,各元组的顺序可以交换。l一个关系中任意两个元组不能完全相同,即同一关系中不能有一个关系中任意两个元组不能完全相同,即同一关系中不能有重复的元组。重复的元组。返回目录1.5 1.5 关系模型关系模型1.5.2关系运算关系运算对关系的数据操作主要有查询、更新(包括插入、删除和修对关系的数据操作主要有查询、更新(包括插入、删除和修改)两大类,其中又以查询操作为核心。改)两大类,其中又以查询操作为核心。关系数据操作能力可以用关系代数来表示。关系代数直接用对关系数据操作能力可以用关系代数来表示。关系代数直接用对关系的运算来表达操作目的。关系的运算来表达操作目的。这里介绍几个专门的关
29、系运算这里介绍几个专门的关系运算。返回目录1.5 1.5 关系模型关系模型1.5.2关系运算关系运算1选择选择选择是从指定关系中选取满足给定条件的若干元组组成一个新选择是从指定关系中选取满足给定条件的若干元组组成一个新的关系。表示为:的关系。表示为:例:例:运算结果:运算结果:学学 号号姓姓 名名性性 别别出生日期出生日期入学时间入学时间班班 级级20070101102孙孙 雷雷男男1988-5-62007-9-1jy07120070101104刘刘 刚刚男男1986-12-12007-9-1jy071返回目录1.5 1.5 关系模型关系模型1.5.2关系运算关系运算2投影投影投影是从指定的关
30、系中选取指定若干属性组成一个新关系。投影是从指定的关系中选取指定若干属性组成一个新关系。表示为:表示为:例:例:运算结果:运算结果:学学 号号姓姓 名名班班 级级20070101101李李 颖颖jy07120070101102孙孙 雷雷jy07120070101103郑郑涛琴涛琴jy07120070101104刘刘 刚刚jy071返回目录1.5 1.5 关系模型关系模型1.5.2关系运算关系运算3连接连接连接是从两个关系中选取属性满足给定条件的元组连接在一起连接是从两个关系中选取属性满足给定条件的元组连接在一起组成一个新关系。表示为:组成一个新关系。表示为:R、S是关系名是关系名A是是R中的属
31、性中的属性B是是S中的属性中的属性代表比较运算符(代表比较运算符()当当为为“=”,且属性,且属性A和和B相同时,称为自然连接。记作:相同时,称为自然连接。记作:返回目录1.5 1.5 关系模型关系模型1.5.2关系运算关系运算3连接连接例:关系例:关系R关系关系S学学 号号姓姓 名名班班 级级20070101101李李 颖颖jy07120070101102孙孙 雷雷jy07120070101103郑郑涛琴涛琴jy07120070101104刘刘 刚刚jy071学学 号号成成 绩绩2007010110282200701011037420070101105632007010110670返回目录1
32、.5 1.5 关系模型关系模型1.5.2关系运算关系运算3连接连接例:例:运算结果:运算结果:学学 号号姓姓 名名班班 级级成成 绩绩20070101102孙孙 雷雷jy0718220070101103郑涛琴郑涛琴jy07174返回目录1.5 1.5 关系模型关系模型1.5.3关系完整性关系完整性关系的完整性约束是定义在关系上的一组约束条件,用于保证数关系的完整性约束是定义在关系上的一组约束条件,用于保证数据的正确性、有效性和一致性。据的正确性、有效性和一致性。关系的完整性有四种:关系的完整性有四种:(1)实体完整性)实体完整性实体完整性规则:关系中主属性的值不能取空值。实体完整性规则:关系中
33、主属性的值不能取空值。例如,学生关系中,学号是主属性,学号的值不能取空值。例如,学生关系中,学号是主属性,学号的值不能取空值。实体完整性规则是关系模型必须满足的完整性约束条件。实体完整性规则是关系模型必须满足的完整性约束条件。(2)域完整性)域完整性 域完整性规则要求关系中的属性值必须具有正确的数据类型、域完整性规则要求关系中的属性值必须具有正确的数据类型、格式以及有效的范围,保证输入值的有效性。例如性别属性值只格式以及有效的范围,保证输入值的有效性。例如性别属性值只能是能是“男男”或或“女女”,成绩不能为负数等。,成绩不能为负数等。返回目录1.5 1.5 关系模型关系模型1.5.3关系完整性
34、关系完整性(3)参照完整性参照完整性参照完整性规则:如果关系参照完整性规则:如果关系R的外码的外码F与关系与关系S的主码相对应,那的主码相对应,那么在关系么在关系R中中F的每个值必须要么等于关系的每个值必须要么等于关系S中某个元组的主码的中某个元组的主码的值,要么取空值。值,要么取空值。例如:学生(学号,姓名,性别,出生日期,入学时间、班级)例如:学生(学号,姓名,性别,出生日期,入学时间、班级)班级(班号,班名,班主任班级(班号,班名,班主任)学生关系中班级属性的值必须:班级关系中的某个班号的值学生关系中班级属性的值必须:班级关系中的某个班号的值或者为空值或者为空值参照完整性规则要求不能引用
35、不存在的元组。参照完整性规则要求不能引用不存在的元组。参照完整性规则是关系模型必须满足的完整性约束条件参照完整性规则是关系模型必须满足的完整性约束条件。返回目录1.5 1.5 关系模型关系模型1.5.3关系完整性关系完整性(4)用户定义完整性用户定义完整性用户定义完整性规则是根据应用环境的要求和实际需要,针对用户定义完整性规则是根据应用环境的要求和实际需要,针对具体的应用提出的约束条件。这些约束不是关系模型自身所要求具体的应用提出的约束条件。这些约束不是关系模型自身所要求的,而是具体应用所要求的。这样的完整性约束需要用户自己定的,而是具体应用所要求的。这样的完整性约束需要用户自己定义,故称为用
36、户定义完整性。义,故称为用户定义完整性。返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.1数据库系统的模式结构数据库系统的模式结构从数据管理系统的角度看,数据库通常采用三级模式结构,这是从数据管理系统的角度看,数据库通常采用三级模式结构,这是数据库管理系统的内部结构。数据库管理系统的内部结构。应用2应用3应用1应用4应用5外模式A外模式B外模式C模式内模式数据库内模式/模式映像外模式/模式映像由数据库管理员建立维护返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.1数据库系统的模式结构数据库系统的模式结构模式:逻辑模式模式:逻辑模式 是数据库中全体数据的逻辑结构和特征的描
37、述是数据库中全体数据的逻辑结构和特征的描述 是所有用户的公共数据视图是所有用户的公共数据视图 一个数据库只有一个模式一个数据库只有一个模式外模式:子模式外模式:子模式 用户模式,是模式的子集用户模式,是模式的子集 是数据的局部逻辑结构是数据的局部逻辑结构 是数据库用户看到的数据视图是数据库用户看到的数据视图 一个数据库可以有多个外模式一个数据库可以有多个外模式 每一个外模式都是为不同的用户建立的数据视图每一个外模式都是为不同的用户建立的数据视图返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.1数据库系统的模式结构数据库系统的模式结构内模式:存储模式内模式:存储模式 是数据在数据库中
38、的内部表示是数据在数据库中的内部表示 即数据的物理结构和存储方式描述即数据的物理结构和存储方式描述 一个数据库只有一个内模式一个数据库只有一个内模式外模式外模式/模式映像:模式映像:定义外模式与模式之间的对应关系定义外模式与模式之间的对应关系 当模式改变时,对各个外模式当模式改变时,对各个外模式/模式的映像作相应改变,可以模式的映像作相应改变,可以使外模式保持不变,保证了数据的逻辑独立性使外模式保持不变,保证了数据的逻辑独立性。返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.1数据库系统的模式结构数据库系统的模式结构模式模式/内模式映像:内模式映像:定义了模式与内模式之间的对应关系
39、定义了模式与内模式之间的对应关系数据库的存储结构改变时,对模式、内模式作相应改变,可以数据库的存储结构改变时,对模式、内模式作相应改变,可以使模式保持不变,保证了数据的物理独立性。使模式保持不变,保证了数据的物理独立性。三级模式结构的优点:三级模式结构的优点:保证数据的独立性;保证数据的独立性;简化了用户的使用;简化了用户的使用;减少冗余,利于共享;减少冗余,利于共享;有利于数据的安全操作。有利于数据的安全操作。返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.2数据库系统的体系结构数据库系统的体系结构从数据库最终用户的角度看,数据库系统的体系结构分为单用户从数据库最终用户的角度看,
40、数据库系统的体系结构分为单用户结构、主从式结构、分布式结构、客户机结构、主从式结构、分布式结构、客户机/服务器结构、浏览器服务器结构、浏览器/服务服务器结构。器结构。(1)单用户结构)单用户结构全部数据、数据库管理系统、应用程序都装在一台计算机上,整全部数据、数据库管理系统、应用程序都装在一台计算机上,整个系统由一位用户独占。个系统由一位用户独占。这样的系统无法实现不同计算机之间的数据共享。而现实中一个这样的系统无法实现不同计算机之间的数据共享。而现实中一个组织或单位通常有多个部门,若各部门都采用单用户数据库系统管理组织或单位通常有多个部门,若各部门都采用单用户数据库系统管理自己部门的数据,则
41、各部门的数据无法共享,这就造成大量的冗余数自己部门的数据,则各部门的数据无法共享,这就造成大量的冗余数据。据。返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.2数据库系统的体系结构数据库系统的体系结构(2)主从式结构)主从式结构数据、数据库管理系统、应用程序都放数据、数据库管理系统、应用程序都放在主机上,所有处理都在主机上完成,在主机上,所有处理都在主机上完成,多个用户通过多个终端访问数据库,共多个用户通过多个终端访问数据库,共享数据资源。享数据资源。这种结构具有实现集中管理、数据易于这种结构具有实现集中管理、数据易于维护、安全性好等优点。但当终端用户维护、安全性好等优点。但当终端
42、用户过多时,会使主机的任务过重,导致系过多时,会使主机的任务过重,导致系统性能下降。当主机发生故障时,会影统性能下降。当主机发生故障时,会影响整个系统的使用。响整个系统的使用。返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.2数据库系统的体系结构数据库系统的体系结构(3)分布式结构)分布式结构网络主机主机主机场地A场地B场地C数据库数据库数据库返回目录1.6 1.6 数据库系统结构数据库系统结构1.6.2数据库系统的体系结构数据库系统的体系结构(3)分布式结构)分布式结构分布式数据库是数据库技术与计算机网络技术相结合的产物。分布式数据库是数据库技术与计算机网络技术相结合的产物。在分
43、布式结构中,数据库中的数据物理地分布在计算机网络中不在分布式结构中,数据库中的数据物理地分布在计算机网络中不同地点的计算机上,但这些数据在逻辑上是相互联系的整体。每同地点的计算机上,但这些数据在逻辑上是相互联系的整体。每台计算机上都装有分布式数据库管理系统和应用程序,可以处理台计算机上都装有分布式数据库管理系统和应用程序,可以处理本地数据库中的数据,也可以处理异地数据库中的数据。本地数据库中的数据,也可以处理异地数据库中的数据。分布式数据库可以满足地理上分散的企业、组织的需求,其优点分布式数据库可以满足地理上分散的企业、组织的需求,其优点是:在网络中每台节点机上既能执行全局应用,也能执行局部应
44、是:在网络中每台节点机上既能执行全局应用,也能执行局部应用;可以局部共享数据和全局共享数据;可靠性高;可扩充性好。用;可以局部共享数据和全局共享数据;可靠性高;可扩充性好。但分布式数据库系统比较复杂,数据的分布存放使得数据不易管但分布式数据库系统比较复杂,数据的分布存放使得数据不易管理维护,同时也增加了许多开销理维护,同时也增加了许多开销 返回目录1.6 1.6 数据库系统结构数据库系统结构(4)客户)客户/服务器结构(服务器结构(Client/Server结构,结构,C/S结构)结构)DBMS功能接口数据库接口应用工具客户机接口应用工具接口应用工具服务器网络返回目录1.6 1.6 数据库系统
45、结构数据库系统结构(4)客户)客户/服务器结构(服务器结构(Client/Server结构,结构,C/S结构)结构)网络中某个结点的计算机作为数据库服务器,其他结点的计算机网络中某个结点的计算机作为数据库服务器,其他结点的计算机作为客户机。作为客户机。服务器端称作后台,用于执行数据库管理系统功能;服务器端称作后台,用于执行数据库管理系统功能;客户端称作前台,用于支持应用开发。客户端称作前台,用于支持应用开发。数据库服务器的任务:完成数据管理、信息共享、安全管理等,数据库服务器的任务:完成数据管理、信息共享、安全管理等,接受来自客户端的数据访问请求,对其进行处理,然后将结果返回给接受来自客户端的
46、数据访问请求,对其进行处理,然后将结果返回给用户;用户;客户机的任务:提供用户界面,提交数据访问请求,接受和处理客户机的任务:提供用户界面,提交数据访问请求,接受和处理数据库的返回结果。数据库的返回结果。客户端和服务器端的分工合作、协同处理,使整个系统达到最高客户端和服务器端的分工合作、协同处理,使整个系统达到最高效率。效率。返回目录1.6 1.6 数据库系统结构数据库系统结构(5)浏览器)浏览器/服务器结构(服务器结构(Browser/Server结构,结构,B/S结构)结构)浏览器、浏览器、Web服务器、数据库服务器三层结构所组成服务器、数据库服务器三层结构所组成在这三层中,在这三层中,W
47、eb服务器担任中间层应用服务器的角色,它是连服务器担任中间层应用服务器的角色,它是连接数据服务器的通道。在浏览器接数据服务器的通道。在浏览器/服务器结构中,无须在每台计算机上服务器结构中,无须在每台计算机上安装专门的软件,用户通过浏览器向安装专门的软件,用户通过浏览器向Web服务器发出请求,服务器对服务器发出请求,服务器对浏览器的请求进行处理,将用户所需的信息返回到浏览器。浏览器的请求进行处理,将用户所需的信息返回到浏览器。返回目录1.6 1.6 数据库系统结构数据库系统结构(5)浏览器)浏览器/服务器结构(服务器结构(Browser/Server结构,结构,B/S结构)结构)在软件系统的改进
48、和升级越来越频繁的情况下,浏览器在软件系统的改进和升级越来越频繁的情况下,浏览器/服务器结服务器结构架构体现了更方便的特性。无论用户的规模有多大、有多少分支机构架构体现了更方便的特性。无论用户的规模有多大、有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,这就大大减轻了系统维护与升级的成本和工作量。进行,这就大大减轻了系统维护与升级的成本和工作量。返回目录小结小结 本章演示了数据库应用系统实例本章演示了数据库应用系统实例“教务管理系统教务管理系统”,介绍了信,介绍了信息、数据、数据管理、数据库、数据库管理系
49、统、数据库系统等息、数据、数据管理、数据库、数据库管理系统、数据库系统等概念,介绍了数据模型的意义和关系模型的组成要素,还介绍了概念,介绍了数据模型的意义和关系模型的组成要素,还介绍了数据库系统的三级模式结构和应用体系结构。数据库系统的三级模式结构和应用体系结构。通过本章的学习,应理解并掌握数据库系统的概念,理解关系通过本章的学习,应理解并掌握数据库系统的概念,理解关系数据模型,掌握关系的基本概念,理解数据库系统数据模型,掌握关系的基本概念,理解数据库系统的三级模式结构的三级模式结构和应用体系结构和应用体系结构。返回目录第第2 2章章 数据库设计数据库设计 知识技能目标:知识技能目标:1理解数
50、据库设计过程理解数据库设计过程2掌握数据库设计的方法步骤掌握数据库设计的方法步骤第第2 2章章 数据库设计数据库设计 引导案例:引导案例:小型教务管理系统,可进行选课,录入、修改、小型教务管理系统,可进行选课,录入、修改、查询、统计成绩,管理基本信息查询、统计成绩,管理基本信息这些工作涉及到学生的数据、课程的数据、学这些工作涉及到学生的数据、课程的数据、学生每门课程的成绩、系部、专业和班级的数据等,生每门课程的成绩、系部、专业和班级的数据等,这些数据需要合理地组织存储这些数据需要合理地组织存储这就需要进行数据库设计,即设计教务管理数这就需要进行数据库设计,即设计教务管理数据库。据库。本章来介绍