数据库基本原理hcy.ppt
《数据库基本原理hcy.ppt》由会员分享,可在线阅读,更多相关《数据库基本原理hcy.ppt(63页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Access 应用技术任课教师:黄朝阳厦门海洋职业技术学院 信息技术系 e_mail:Tel:8954063第第1章章 数据库基本原理数据库基本原理1.1数据库概述1.2数据模型1.3关系的完整性1.4关系模型的规范化1.1 数据数据库概述库概述1.1.1数据库的产生和发展关系数据库仍然占绝对的主导地位,并将影响着数据库技术的发展。数据库技术的发展已经历了4个发展阶段:1.人工管理数据阶段的特点 2.文件系统管理阶段的特点 3.数据库系统阶段的特点4.高级数据库阶段现实世界机器世界DBMS支持的数据模型人脑的认识抽象信息世界概念模型现实世界中客观对象的抽象过程1.1.2 1.1.2 现实世界、
2、信息世界、数据世界现实世界、信息世界、数据世界1.1.3 1.1.3 数据库基本概念数据库基本概念数据库数据库指长期存储在计算机内的有组织的、可共享的、相关数据的集合。数据库管理系统数据库管理系统(DatabaseManagementSystem,简称DBMS)是一种计算机软件系统。以数据库管理系统为核心的应用系统称为管理信息系统(Management Information System,简称MIS)。数据库系统数据库系统(DatabaseSystem,简称DBS)就是以数据库应用为基础的计算机系统。数据库系统不仅包括必须存储的数据,还包括相应的硬件、软件和各类工作人员。数据库操作系统数据库
3、管理系统应用开发工具应用系统数据库管理员用户用户用户数据库系统硬件数据库在计算机系统中的地位应用系统应用开发工具DBMS操作系统1.2 数据模型数据模型概念模型概念模型(Idea Model)是现实世界到信息世界的是现实世界到信息世界的抽象,又称为抽象,又称为信息模型信息模型。数据模型(数据模型(Data Model)是信息世界到数据世界)是信息世界到数据世界的抽象。的抽象。数据库领域最常见的数据模型有数据库领域最常见的数据模型有4种:层次模型、种:层次模型、网状模型、关系模型和面向对象模型。其中层次网状模型、关系模型和面向对象模型。其中层次模型和网状模型统称为非关系模型。模型和网状模型统称为
4、非关系模型。目前,关系模型是最常用的数据模型。以关系模型目前,关系模型是最常用的数据模型。以关系模型为基础建立的数据库管理系统称为关系数据库管为基础建立的数据库管理系统称为关系数据库管理系统(理系统(RDBMS)。)。信息世界的主要概念信息世界的主要概念1.实体实体(Entity)就是现实世界中客观存在并可相互区分的事物。实体既可以是看得见摸得着的具体的事物,也可以是抽象的概念或联系。例如,某一本书、某一架飞机、某个学生等都是实体。2.属性实体所具有的某一特征称为属性(Attribute)。一个实体由若干个(至少一个)属性来描述。一个实体的所有属性组成实体本身。例如,学生实体可以由学号、姓名、
5、性别、出生年月日、班级等属性组成。而(0100001、冯东梅、女、1980/12/26、01电子商务1)就是一个学生(实体)的属性值。3.码唯一标识实体的属性组称为码(Key),通常又称为关键字。如果实体有多个码,则可以选定其中一个码为主码(PrimaryKey),通常又称为主关键字。如果实体只有一个码,它就是主码(主关键字)。4.域属性的允许取值的集合称为该属性的域(Domain)。例如,学号的域是7位数字(某校规定),性别的域是男、女,班级的域是该校所有班级的集合。6.实体集同型实体的集合称为实体集(Entityset)。例如,某个学校(或某个班级)的全体学生就是一个实体集。7.联系信息世
6、界的不同实体集之间和同一实体集内部都可能存在一定的联系(Relationship)。数据世界的概念是和信息世界的概念相对应的:数据表(Datatable)是实体集的数据表示;记录(Record)是实体的数据表示;数据项(Item)是属性的数据表示。记录由若干数据项组成。表表1-1 1-1 学生情况学生情况学学 号号姓姓 名名性别性别出生年月日出生年月日家庭所在地家庭所在地家庭人均月收入家庭人均月收入01000010100001冯东梅冯东梅女女1980-12-261980-12-26北京北京1,100 1,100 01000020100002章章 蕾蕾女女1979-02-181979-02-18
7、上海上海350 350 01000070100007闻维祥闻维祥男男1979-02-241979-02-24天津天津450 450 01000080100008黎念真黎念真女女1979-08-191979-08-19重庆重庆400 400 01000090100009钟开才钟开才男男1978-08-081978-08-08广东广东400 400 01001170100117江介敏江介敏女女1978-06-081978-06-08湖北湖北600 600 1.2.3 1.2.3 实体的联系实体的联系信息世界存在的联系有两种:其一是一个实体集内部的联系;其二是不同实体集之间的联系。1.实体集内部的联
8、系实体集内部的联系通常指组成该实体的各属性之间的联系。在表1-1中,不同实体的学号都不重复,即学号与实体间有一一对应关系。学号就是学生情况这个实体集的关键字。表表1-1 1-1 学生情况学生情况学学 号号姓姓 名名性别性别出生年月日出生年月日家庭所在地家庭所在地家庭人均月收入家庭人均月收入01000010100001冯东梅冯东梅女女1980-12-261980-12-26北京北京1,100 1,100 01000020100002章章 蕾蕾女女1979-02-181979-02-18上海上海350 350 01000070100007闻维祥闻维祥男男1979-02-241979-02-24天津
9、天津450 450 01000080100008黎念真黎念真女女1979-08-191979-08-19重庆重庆400 400 01000090100009钟开才钟开才男男1978-08-081978-08-08广东广东400 400 01001170100117江介敏江介敏女女1978-06-081978-06-08湖北湖北600 600 2.实体集之间的联系对于两个不同的实体集A和B,它们之间的联系通常有以下三种方式:一对一联系(1:1)一对多联系(1:n)多对多联系(m:n)表示概念模型最常用的是实体联系方法(entity-relationshipapproach)。该方法用ER图来描述
10、。在ER图中,实体型、属性和联系的表示方法如下:(1)实体型:用矩形表示,矩形框内写实体名;1.2.4 1.2.4 概念模型概念模型(a)1:1联系(b)1:n联系(c)m:n联系两个实体之间的三类联系学生实体、课程实体及其属性将多对多联系转化为一对多联系的一般方法是:增加一个新的实体集,并且这个新的实体集和原来的两个实体集之间都是一对多联系。学生学习成绩管理概念模型这个例子也给出了将多对多联系转化为一对多联系的一般方法,这就是:增加一个新的实体集,并且这个新的实体集和原来的两个实体集之间都是一对多联系。1.2.5 1.2.5 层次模型层次模型 层次模型(HierarchicalModel)用
11、树形结构表示各类实体以及实体间的联系。从树的观点看,层次模型满足以下两个条件:(1)有且仅有一个结点无双亲结点,称之为根结点(简称根);(2)根以外的其他结点有且仅有一个双亲结点。层次模型只能反映实体之间一对多的关系。层次模型示意图下图所示是一个层次模型的典型。1.2.6 1.2.6 网状模型网状模型 网状模型(NetworkModel)是比层次模型更具普遍性的一种结构。它去掉了层次模型的两个限制条件,允许有一个以上的结点无双亲结点,允许结点可以有多个双亲结点,此外它还允许两个结点之间有多种联系(称之为复合联系)。网状模型有如下优点:(1)可以直接描述包括多对多在内的更复杂的关系。(2)具有良
12、好的性能,存取效率较高。网状模型也有缺点:(1)对计算机的硬件和软件环境要求较高。(2)数据库的独立性较差。(3)操作比较复杂。下图表示零部件的采购使用关系,这是一个典型的网状模型。下图表示介绍的学生选修关系这个网状模型。1.2.7 1.2.7 关系模型关系模型关系模型(RelationalModel)中数据的逻辑结构是一张二维表,它由行和列组成。表1-1所示的学生情况就是一个关系模型。关系模型的主要概念关系(relation):关系模型中表示数据的整个一张二维表就是关系。元组(Tuple):二维表中的每一行即为一个元组,对应概念模型的一个实体。属性(Attribute):二维表中的每一列即为
13、一个属性,对应概念模型的一个属性。表表1-1 1-1 学生情况学生情况学学 号号姓姓 名名性别性别出生年月日出生年月日家庭所在地家庭所在地家庭人均月收家庭人均月收入入01000010100001冯东梅冯东梅女女1980-12-261980-12-26北京北京1,100 1,100 01000020100002章章 蕾蕾女女1979-02-181979-02-18上海上海350 350 01000070100007闻维祥闻维祥男男1979-02-241979-02-24天津天津450 450 01000080100008黎念真黎念真女女1979-08-191979-08-19重庆重庆400 40
14、0 01000090100009钟开才钟开才男男1978-08-081978-08-08广东广东400 400 01001170100117江介敏江介敏女女1978-06-081978-06-08湖北湖北600 600 主码(Key):二维表中唯一标识元组的某个属性组称为该关系的主码,对应概念模型的码。域(Domain):二维表中任一属性的取值范围称为该属性的域,对应概念模型的域。分量:元组中的每一个属性值称为元组的分量。关系模式(Relationschema):对关系的描述称为关系模式,通常用关系名R及其所有属性名U的集合来表示,类似概念模型中实体型的表示方法。eg:R(U)学生(学号,姓名
15、,性别,专业学生(学号,姓名,性别,专业号号号,年龄)号,年龄)整个表1-1就是一个关系。表中的每一行都是一个元组。学号、姓名、性别等每一列都是属性。学号是这个关系的码。男、女、正确的日期集合分别是性别和出生年月日的域。0100001、冯东梅、女、1980-12-26、北京和1100等都是分量。而学生(学号,姓名,性别,出生年月日,家庭所在地,家庭人均月收入)是这个关系的关系模式。关系模型既可以反映属性之间一对多的关系,也可以反映属性之间多对多的关系。关系模型具有以下特点:(1)数据结构简单,概念清楚;(2)能够直接反映实体之间一对一、一对多和多对多关系;(3)通过公共属性就可以建立表与表之间
16、的联系,从而就建立了实体之间的联系;(4)具有严格的理论基础。1.3 1.3 关系的完整性关系的完整性关系模型允许定义三类完整性:实体完整性、参照完整性和用户定义的完整性。实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为关系的两个不变性,由关系系统自动支持。这里先列出3个例题,以便后面引用。例1-1学生实体和专业实体可以用下面的关系表示(其中主码用红色体字标识):表示(其中主码用红色体字标识):学生学生(学号学号,姓名,性别,专业号,年龄,姓名,性别,专业号,年龄)专业专业(专业号专业号,专业名,专业名)例例1-21-2 学生实体、课程实体、学生与课程之间学生实体、课程实体、学
17、生与课程之间的选课及成绩实体可以用如下的选课及成绩实体可以用如下3个关系来表个关系来表示:示:学生学生(学号学号,姓名,性别,专业号,年龄,姓名,性别,专业号,年龄)课程课程(课程号课程号,课程名,学分,课程名,学分)选课及成绩选课及成绩(学号,课程号学号,课程号,成绩,成绩)例例1-31-3 另一个学生实体的关系是:另一个学生实体的关系是:学生学生2(学号学号,姓名,性别,专业号,年龄,姓名,性别,专业号,年龄,班长学号班长学号)实体完整性(Entity Integrity)规则:若属性若属性A A是基本关系是基本关系R R的主属性,则属性的主属性,则属性A A不能取不能取空值。空值。在例1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 基本原理 hcy
限制150内