第01章 数据库系统概述.ppt_第1页
第01章 数据库系统概述.ppt_第2页
第01章 数据库系统概述.ppt_第3页
第01章 数据库系统概述.ppt_第4页
第01章 数据库系统概述.ppt_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库系统原理,浙江工商大学出版社,数据库系统原理,第1章 数据库系统概述 第2章 SQL Server与数据库 第3章 关系运算和完整性约束 第4章 SQL Server与数据查询 第5章 概念模型设计 第6章 逻辑结构设计 第7章 外模式和物理模式 第8章 查询处理与查询优化 第9章 事务管理 第10章 实例数据库系统 第11章 数据库新技术,参考文献,Henry,F Korth,S SudarshanDatabase System ConceptsMMcGraw-Hill,2006. 王珊, 萨师煊. 数据库系统概论M. 北京:高等教育出版社,2006. 陈京民数据仓库与数据挖掘技术M.

2、 北京:电子工业出版社,2007. 徐人凤,韩枫关系数据库基础M 北京:高等教育出版社,2007 刘永信息系统分析与设计M北京:科学出版社2005 韩培友数据库技术M. 西安: 西北工业大学出版社,2008. 黄德才数据库原理及其应用教程M北京:科学出版社2006 张敏,徐震,冯登国数据库安全M北京:科学出版社2005 崔铁军地理空间数据库原理M北京:科学出版社2007,1.1基本概念,数据(Data):用来记录或者标识事物的本质特征和物理状况的一串物理符号序列。 生活中常见的数据类型: 数值型数据:表示年龄、工资和单价等大小多少的数据 字符型数据:表示人名、地名和物品等名称的数据 日期型数据

3、:表示工作、出生和入党日期等有关日期的数据 逻辑型数据:表示结婚、党员等各种逻辑判断结果的数据 音频数据:表示语音、声效和音乐的声音数据 图形数据:表示直线、三角形和圆形等各种几何图形的数据 图像数据:表示人物照片、风景照片和遥感图像的数据 视频数据:表示电影剪辑的数据 动画数据:表示计算机三维动画的数据,数据的理解,生活中,数据是有生活意义的,脱离了生活,除了数学概念外,数据将没有意义。 数据库记录的数据不仅仅是数字,其更重要的是:记录和表达数据所代表的生活意义(数据之间的关联性)。有效地表达生活中数据之间的关系是数据库技术的重心,也是数据库技术的核心意义所在。 生活的类别有很多,数据之间的

4、关系看起来非常复杂,数据库技术要求用统一的数学模型去表达生活中数据之间的关系。,生活数据,纸面记录,数学模型,DBMS,物理存储,调研分析,模型转换,手动输入 SQL,存储结构,ER图,层次模型 网状模型 关系模型 面向对象模型,数据库安全 数据库备份 并行管理,本书的主要内容,第一章 记住,地球上有一门专门研究数据存储技术的科学! 第二章 地球上有很多数据存储的软件,代表之一SQL SERVER 第三章 目前,地球上最流行的数据存储模型是关系模型 第四章 目前,各种数据存储软件支持的语言SQL 第五章 如何去体验生活,将生活的数据记录在纸面上(ER图) 第六章 如何将ER图转换为关系表格(关

5、系表格有两个极端,一个是所有数据在一张表格里面,这个好吗?另外一个极端是一种数据一张表格,这个好吗?) 第七章 数据的应用层次和硬件存储层次 第八章 查询效率如何提高 第九章 数据库操作数据,如何保证操作的安全性 第十 十一章 体验DBMS,展望未来,1.1基本概念,数据库(Database,DB):组织、存储、管理数据的电子仓库,它是存储在计算机内的通用化的、综合性的数据的集合。其基本思想就是对所有的数据实行统一的、集中的、独立的管理,数据库独立于程序而存在,并可以提供给各类不同的用户共享资源。其特点是它具有统一的结构、较小的冗余度,较高的数据独立性和易扩展性。,1.2 数据库管理系统,数据

6、库管理系统(DataBase Management System,DBMS)正是这样一种软件。它是位于用户和操作系统之间,负责数据管理的软件。通过DBMS,用户可以方便的创建、维护和使用DB。 三个基本组成部分: 数据定义功能。通过数据描述语言(Data Definition Language,DDL),定义DB中的数据对象,以及关于数据的约束条件。对于关系数据库,包括定义基本表,定义视图、索引、存储过程等。 数据操纵功能。通过数据操纵语言(Data Manipulation Language,DML),实现如查询、插入、删除等操作。 数据访问控制。通过数据控制语言(Data Control

7、Language,DCL),DBMS提供了DB的访问控制机制。例如:防止未经授权的用户访问DB;提供并发控制机制,从而允许用户共享DB。,1.1.3 数据库系统,数据库系统(DataBase System,DBS)是一个以DB为核心的系统。由DB、DBMS及开发工具、应用软件、数据库管理人员等构成。 用户可以在DBS中执行各种操作,重要的操作如下: (1)向DB中增加新的各种类型的文件,或者删除已存在的文件。 (2)向已有的数据文件中插入新的数据。 (3)在已有的数据文件中检索数据、更新数据、删除数据等。,1.2 简单数据库实例,公司对数据处理的要求:每个下属机构有一个唯一的名称,有办公地址,

8、一个特定的雇员作为该机构的责任人,且该管理者不是终身制的,需要记录每个管理者开始其任期的日期;一个下属机构管理着若干个工程,每个工程具有唯一的名称和编号,另外,还需记录工程所在地址和项目经理;公司有许多员工,需要记录每个雇员的员工号、姓名、家庭住址、性别和出生年月;一个雇员被分配到一个分公司或者部门。 DB以表格的形式组织数据。Dept、Proj和Emp。 仔细地观察表1-1表1-3,虽然信息分布在不同的表格中,但我们可以查询一些感兴趣的信息。例如:有杭州分公司、宁波分公司等一些下属部门,杭州分公司的负责人为刘皇叔,他的家庭地址在教工路118号等。,表1-1 Dept,表1-2 Proj,表1

9、-3 Emp,1.3 数据库系统的组成,1.3 数据库系统的组成结构,数据库系统由数据库、数据库管理系统(及开发工具)、应用软件、数据库管理人员等构成。 数据库:从用户的观点来看,数据库系统最重要的构件是数据。系统的全部数据是以数据库的形式组织的。我们期望它们被共享地使用,不同的用户可以并发地访问同一份数据。而且,这种并发访问不会破坏数据的完整性。 软件:DBS中的软件包括DBMS、支持DBMS运行的操作系统、具有数据库接口的高级语言开发工具、为特定应用开发的应用软件。 人员:开发、管理和使用DBS的人员包括数据库管理员、系统分析员和数据库设计员、应用程序员和最终用户。当然,不同的人员具有各自

10、的职责。,1.3.2 数据库管理员,数据库管理员(Database Administrator,DBA)是全面掌控一个或者多个DB的设计和使用的一组人。DBA是DBS的控制者,监督并管理DBS的所有资源(DB、DBMS以及相关软件等)。 DBA团队的职责和作用: 决定数据库的信息内容和结构 定义存储结构和设计存取策略 定义安全性要求和完整性约束 监控数据库的使用和运行 数据库的改进和重组此外 :DBA还包括系统分析员和数据库设计员、应用程序员和最终用户。 系统分析员负责DBS的需求分析,实施数据库的概要设计。 数据库设计员负责DB各级模式的设计。 应用程序员负责编制和调试应用系统的各个程序模块

11、。 最终用户通过应用系统的接口界面使用DBS。,1.4 数据库系统的发展,(1)需要提供程序和数据之间更大的独立性,从而减少维护成本。 (2)期望管理日益复杂的数据类型和结构。 (3)期望为既没有程序设计语言背景,又不详细了解数据在DB中存储方式的用户提供对数据更加轻松更加快速的访问。 (4)期望为决策支持应用提供功能更加强大的平台。,1.4.1 数据管理技术的发展,人工管理 文件系统 数据库系统,1人工管理阶段,(1)数据不保存:计算机的主要应用是数学和工程领域的科学计算,一般不需要将数据长期保存,只是在对课题需要计算时将数据输入,用完后不保存原始数据和计算结果。 (2)没有对数据进行专门管

12、理的软件系统:程序员不仅要规定数据的逻辑结构,而且要在程序中设计数据的物理结构,包括数据在存储设备上的物理存储结构、存取方法、输入输出方式等。因此程序中存取数据的子程序随着存储的改变而改变,数据与程序不具有一致性。 (3) 没有文件的概念:数据的组织方式必须由程序员自行设计。 (4)一组数据对应于一个程序,数据是面向应用的,这样程序之间数据无法共享、无法相互利用和互相参照,从而导致程序和程序之间有大量重复的数据。,2文件系统阶段,(1)数据可以根据需要长期保存在外存上反复使用。 (2)程序之间有了一定的独立性。 (3)文件的形式已经多样化。 (4)数据的存取基本上以记录为单位。,3数据库系统阶

13、段,数据库系统以数据管理为核心 (1)数据结构化。 (2)数据相对独立。 (3)数据共享。 (4)数据操作界面独立。 (5)数据安全性控制由DBMS统一管理。管理控制功能: 安全性控制: 一致性控制: 并发性控制: 数据库恢复:,1.4.2 数据库系统的发展,常用的数据模型依次有层次模型、网状模型、关系模型和面向对象模型等。层次数据库系统和网状数据库系统是第一代DBS。关系数据库系统称第二代DBS。面向对象模型的DBS为第三代DBS。 1第一代数据库系统 层次数据库是使用层次模型设计的数据库。代表是IBM公司的IMS网状数据库是使用网状模型设计的一种数据库,代表是DBTG 2关系数据库系统 在

14、20世纪70年代,IBM公司的E.F.Codd等大型共享数据库数据的关系模型提出关系模型,支持关系模型的DBS称为第二代DBS,80年代后的所有DBS几乎都是关系数据库管理系统RDBMS。 3第三代数据库系统 分布式、并行数据库、演绎数据库、知识库、多媒体库、移动数据库,1.4.3 常用的RDBMS,1Oracle 2SQL Server 版本:SQL Server 2000、SQL Server 2005和SQL Server 2008。 SQL Server 2005是一个全面的数据库平台,使用集成的商业智能(BI)工具并提供了企业级的数据管理。SQL Server 2005数据库引擎为关

15、系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理企业级应用的高可用和高性能的数据应用程序。SQL Server 2005数据引擎是企业数据管理解决方案的核心。此外SQL Server 2005结合了分析、报表、集成和通知功能。 3DB2 IBM研发可以在不同的操作系统平台上运行,用于大型数据库系统 4My SQL 一个开放源代码的小型RDBMS,开发者为瑞典My SQLAB公司,1.5 数据模型,层次模型 网状模型 关系模型。,1.5.1 数据模型的组成要素,1数据结构 数据结构用于描述数据的静态特性。是指对实体类型和实体间联系的表达和实现。 2数据操作 数据操作是指对DB的

16、检索和更新(插入、删除、修改)等操作的集合。数据操作对应了数据库的动态特性的描述。 3完整性约束 数据完整性就是对数据的准确性和一致性的一种保证,它包括数据的正确性和可靠性等。数据完整性约束是给出数据及其联系应具有的制约和依赖规则,用于确保数据的准确可靠。 数据模型应该规定和反应数据模型必须遵守的完整性约束条件。关系模型中有实体完整性,参照完整性和用户定义完整性。,1.5.2 概念模型,概念模型要能充分描述数据的语义特征和数据之间的联系。独立于计算机系统的模型,只是用来描述某个特定组织所关心的信息结构,它是现实世界的第一层抽象,是用户和数据库设计员之间进行沟通交流的工具。 概念模型需要包含数据

17、两方面的内容: (1)数据的静态特性,主要包括数据的基本结构、数据间的联系和数据中的相互约束等; (2)数据的动态特性,主要包括对数据操作的方法。在数据库应用系统中,建立反映客观信息范畴的概念模型是DBS设计中最为重要的,也最基本的步骤之一,它是连接客观信息世界和DBS数据逻辑组织的桥梁,也是计算机专业人员与非计算机专业的用户之间进行交流的基础。 最常用的概念模型:实体联系概念模型(又称E-R概念模型)。,1E-R模型的基本概念,E-R模型的模型描述成分三要素:实体、联系和属性 (1)实体(Entity):客观存在并相互区分的事物。(例如:学生和汽车等),这些对象的共同特征是相互有区别的。 实

18、体型是对同类实体共有特征的抽象定义。例如:人的特征为姓名、性别、年龄、籍贯、职业、学历等 实体集是同一类实体的集合。例如:全体职工。区分 “型”与“值” (2)联系(Relationship):不同实体之间存在着各种相互联系(例如:教师与学生之间存在着“教学”联系)。此外,相同的实体之间也会存在着联系(例如:班长和学生的关系,自联系。 联系型是对同类联系的共有特征的抽象定义。例如:对于象棋比赛这样一种联系,它的联系型可以包括参赛甲方、参赛乙方、参赛时间、参赛地点、比赛结果等特征。 联系集是同一类联系的集合。例如:展销会的全部订单、一次比赛活动中的所有比赛场次、同学的所有选课等都是联系集。,1E

19、-R模型的基本概念,E-R模型的模型描述成分三要素:实体、联系和属性 (3)属性(Attribute):实体所具有的某些特征称为属性。一个实体可以拥有一个或者多个属性(例如:学生可以有学号、姓名、年龄、性别等属性)。 实体的每一个属性都有其取值范围,称为属性的域(Domain)。属性的域可以是整数、实数、字符等。例如:学生实体型中年龄的域是一定区间中的整数。 (4)码(Key):实体型中的某个(些)属性的取值可以用来唯一区分实体集中的具体实体(例如:学生的学号)。 不仅实体型有属性,联系也可以有属性(例如:学生和课程是两个实体型,选课是二者之间的联系,学生选课的成绩既不是学生的属性,也不是课程

20、的属性,而且成绩的取值不仅依赖于具体的学生,又依赖于具体的课程,因此将成绩定义为选课的属性)。,2实体的联系,(1)一对一联系(1:1):对于实体集A中的每一个实体,在实体集B中至多有一个实体与之对应,反之对于B中的每一个实体,在A中至多有一个实体与之对应。记为1:1。 例如:一个班级只有一个班长。 (2)一对多联系(1:n):对于实体集A中的一个实体,实体集B中可以有若干个实体与之对应;反之,对于B中的一个实体,则A中只能有一个实体与之对应。记为1:n。1:1联系有时可看成1:n 联系的一种特殊情况。 例如:系和教师之间的联系。 (3)多对多联系(n:m):对于实体集A中的一个实体,实体集B

21、中可以有若干个实体与之对应;反之,对于B中的一个实体,则A中也有若干个实体与之对应。记为n:m联系。 例如:教师和课程之间的联系。,3E-R模型的表示,(1)长方形用来表示实体型。 (2)菱型和长方形之间的连线表示联系,并且将联系类型标注在连线附近,在长方形和菱形内分别写上实体型名称和联系名称。 (3)椭圆表示实体型和联系的属性,将其与所描述的相应实体型或者联系用线连接,在椭圆内写上属性的名称。 E-R图:使用上述符号,加上必要的文字描述,就可以得到一个能够较好地描绘出实体、实体与实体之间相互联系以及实体和联系属性的结构图,这个图通常称为E-R图,获得E-R图的全部过程通常称为E-R方法。,3

22、E-R模型的表示,一个公司车队DBS中所涉及的部分信息对象所构成的E-R图。,部门,车队,司机,车辆,保险公司,调用,聘用,保险1,保险2,拥有,维修,n,1,n,n,n,1,1,n,1,1,n,1,报销,开销,1,n,维修公司,1.5.3 层次模型,层次模型:(1)对E-R中,只允许一对多联系(包括一对一联系) (2)将实体抽象表示为结点,联系抽象表示为有向线段,忽视属性,所得到的E-R模型的抽象拓扑图,满足有向树的定义。特点:有且仅有一个结点无双亲结点(根);其它结点有且仅有一个双亲结点 在层次模型中,用长方形表示实体型;用有向线段表示实体型之间的联系。描述有层次联系的事物。 层次模型可以

23、很好地反映事物之间一对多联系,而且一对多联系在现实生活中也有广泛的应用。例如:学校的组织机构模型。 图1-4的模型中存在5个节点和4对父子联系,学校和系之间为一对多联系,学校都有若干个系;同样学校和处室、系和教研室、系和班级之间也都是一对多联系。,层次模型优点缺点:,(1)简单:层次结构各层之间的联系逻辑上简单 (2)共享:因为所有数据都保存在公共数据库里 (3)安全:第一个由DBMS提供和强制数据安全的数据库模型。 (4)独立性:提供数据独立性环境,降低编程难度,减少维护工作(5)完整性:给定双亲/子女联系,在双亲段和子女段之间链接。(6)高效率:对一对多联系的数据,层次模型是非常高效率的。

24、 缺点: (1)实现复杂: (2)实现限制: (3)不够灵活: (4)缺乏结构独立性:,1.5.4 网状模型,网状模型的三个基本概念是记录型、数据项(或者字段)以及链接。 联系称为系(Set),一个系至少是由两个记录型组成。第一个记录型称为主记录(Owner Record),相当于层次模型的双亲。第二个记录型称为成员记录(Member Record),相当于层次模型的子女。主记录及其成员记录之间的联系用链接(Link)标识,并赋予系名用于检索和操纵数据。 网状模型与层次模型用树的分支表示访问路径,主记录和成员记录之间的链接表示网状模型的访问路径,一般用指针实现。 (1)只允许是一对多联系(包括

25、一对一) (2)将实体抽象为一结点,联系抽象为一有向线段,拓扑图满足:一个以上的结点无双亲结点;结点可以有两个或以上的双亲结点。 网状模型与层次模型的不同点:前者从子女实体到其双亲实体的联系可以不唯一;而后者从子女实体到其双亲实体的联系是唯一的,即一个子女实体对应于一个双亲实体。例如:学生选课网状模型图1-6,网状模型优点缺点:,(1)简单:与层次模型类似,网状模型也是简单和容易设计的。 (2)更容易的联系类型:处理一对多和多对多联系时更容易 (3)良好的数据访问:在一个系里能访问一个主记录和所有的成员(4)完整性:强制数据完整性,不允许无主记录成员。 (5)独立性:提供足够的数据独立性 (6

26、)数据库标准:支持基于由DBTG提出和ANSI.SPARC标准。 不足: (1)系统复杂 (2)缺乏结构独立性,1.5.5 关系模型,关系模型是继层次和网状模型之后迅速发展的非常流行的数据模型。迄今为止,关系数据库系统一直是DBS的主导产品,且没有受到其它数据模型的挑战。 关系模型有着非常坚实的理论支持,建立在集合论、数理逻辑、关系理论等数学理论基础之上。关系模型结构简单,符合人们的逻辑思维方式,很容易被接受和使用。此外,关系模型还易于计算机实现,很容易从概念数据模型转换过来。 RDBMS不仅实现了层次和网状DBMS具有的基本功能,而且增加了许多新功能,这使得关系模型在实际应用中更容易理解和使

27、用。,1关系模型的定义,关系模型是简单的二维表格结构,概念模型中的每个实体和实体之间的联系都可以直接转换为对应的二维表格形式。每个二维表格称为一个关系。列标题称为关系的型(结构),而表体(内容)称为关系的值。关系中的每一行数据(记录)称为元组,每一列数据称为属性,列标题称为属性名。同一个关系中不允许出现重复元组和相同属性名的属性。列的取值范围称为该列的值域。 表1-4是一个二维表格(即:一个关系)。 关系的型为(工号,姓名,性别,年龄,职务), 关系的值为表中6条记录。表中的每条记录称为一个元组,每一列称为一个属性;列的取值范围称为值域;例如:性别的值域为男,女。,2关系模型应用举例,例:表1

28、-5、表1-6和图1-7的选课联系,对应的关系模型包含三个关系。其中学生关系和课程关系仍为表1-5和表1-6,选课联系对应的关系如表1-7所示,且给选课联系增加了成绩属性,其语义是某个学生选修某门课程所取得的分数。,3关系型的关系定义,在以关系模型为逻辑结构建立的DBS中,所有数据都是以关系的形式定义和保存,特别是所有关系的定义(即结构)也同样是以关系的形式定义和保存。为了区别于一般的关系,把保存关系定义的关系称为DB的元关系、元数据、数据字典等,它提供了DB中所有关系的模式。元关系是在用户建立数据库应用系统时,由DBMS自动定义。 例如:学生选课关系模型,由各关系的型所定义的元关系如表1-8

29、。,4关系模型中的查询和更新,关系数据库的查询和更新运算,既可以在每个关系上进行,也可以在相关的若干个关系上进行,关系间共同使用的连接属性或关联属性 例如:对于学生选课关系模型,既可以分别在学生、课程和选课上单独进行查询和更新,也可以通过它们之间的连接属性学号和课程号把两(或者三)个关系连接起来进行查询和更新。 关系模型具有如下优点: (1)简单 (2)结构独立性 (3)易于设计、实现、维护和使用 (4)灵活和强大的查询能力:结构化查询语言(Structured Query Language,SQL)使得特殊的查询成为现实。,1.6 三级模式结构,ANSI定义的三级模式结构为:内模式、模式和外模式 内模式(存储模式):数据在存储介质上的物理存储结构和操作方式 外模式(用户模式):用户的数据视图,用户和DBS的操作接口 模式(逻辑模式):前两者间的中间层,用户和物理存储与操作桥梁,1外模式,外模式(子模式)对应于用户级的用户视图,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论