数据库系统基础教程PPT完整版.ppt
《数据库系统基础教程PPT完整版.ppt》由会员分享,可在线阅读,更多相关《数据库系统基础教程PPT完整版.ppt(508页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第一章第一章 数据库系统的世界数据库系统的世界The Worlds of Database Systems数据库系统的发展数据库系统的发展数据库管理系统的结构数据库管理系统的结构未来的数据库系统未来的数据库系统21.1 1.1 数据库系统的发展数据库系统的发展c c一、术语一、术语1.数据库数据库是是长长期期储储存存在在计计算算机机内内的的、有有组组织织的的、可可共共享享的的数数据据的的集合。集合。32.数据库管理系统数据库管理系统数数 据据 库库 系系 统统 基基 础础 教教 程程A First Course in Database SystemsDBMS-DataBase Manageme
2、nt System是是 处处 理理 数数 据据 库库 访访 问问 的的 软软 件件。提提供供数数据据库库的的用用户户接接口口。DBMS的目的:的目的:提提供供一一个个可可以以方方便便地地、有有效效地地存存取取数数据据库库信信息息的环境的环境5 3.数据库系统数据库系统是指在计算机系统中引入数据库后的系统是指在计算机系统中引入数据库后的系统6数据库数据库最终用户最终用户应用系统应用系统应用开发工具应用开发工具DBMS操作系统操作系统数据库管理员数据库管理员DBA数数据据库库系系统统构构成成应用程序员应用程序员7z保存信息的两种不同方法:保存信息的两种不同方法:永久性的系统文件、数据库系统永久性的
3、系统文件、数据库系统。z文件方式的问题:文件方式的问题:y数据的冗余和不一致数据的冗余和不一致y数据访问困难数据访问困难y数据孤立数据孤立y完整性问题完整性问题y原子性问题原子性问题y并发访问异常并发访问异常y安全性问题安全性问题二、文件系统与数据库系统二、文件系统与数据库系统8z数据库方法能较好地解决以上的问题数据库方法能较好地解决以上的问题y数据的独立性数据的独立性y有效地访问数据有效地访问数据y减少应用程序的开发时间减少应用程序的开发时间y数据的一致性和安全性数据的一致性和安全性y统一的数据管理统一的数据管理y并发的数据访问并发的数据访问 三、为什么用数据库三、为什么用数据库9z几种模型
4、:几种模型:y基于树的层次模型基于树的层次模型y基于图的网状模型基于图的网状模型物理相关、无高级查询语言物理相关、无高级查询语言y基于表的关系模型基于表的关系模型物理无关、支持高级查询语言,物理无关、支持高级查询语言,y基于对象的面向对象模型基于对象的面向对象模型OOOR四、数据库模型的发展四、数据库模型的发展定长记录定长记录10关系数据库系统关系数据库系统属性属性元组元组11z关查询语言关查询语言ySQL语言语言SELECT balanceFROM AccountsWHERE accountNO=67890;关系数据库系统关系数据库系统12zDBMS的组成的组成y数据、元数据数据、元数据y存
5、储管理程序存储管理程序y事务管理程序事务管理程序y查询处理程序查询处理程序1.2 1.2 数据库管理系统的结构数据库管理系统的结构数据数据元数据元数据存储存储管理程序管理程序查询查询处理程序处理程序事务事务管理程序管理程序模式更新模式更新更新更新查询查询13z数据、元数据数据、元数据y关于数据结构的信息(关于数据的数据)关于数据结构的信息(关于数据的数据)y索引(索引(INDEX)DBMS的组成的组成14z存储管理程序存储管理程序y文件管理程序文件管理程序y缓冲区管理查程序缓冲区管理查程序 DBMS的组成的组成15z查询处理程序查询处理程序y查询优化查询优化磁盘访问,是查询的主要代价;磁盘访问
6、,是查询的主要代价;索引是查询优化的利器索引是查询优化的利器DBMS的组成的组成16z事务管理程序事务管理程序y事务:是用户定义的一个数据库操作序列事务:是用户定义的一个数据库操作序列y事务的四个特性事务的四个特性原子性原子性A一致性一致性C隔离性隔离性I持久性持久性DDBMS的组成的组成17z客户客户-服务器程序体系结构服务器程序体系结构z浏览器浏览器-服务器体系结构服务器体系结构DBMS的组成的组成18z客户客户-服务器程序体系结构服务器程序体系结构z浏览器浏览器-服务器体系结构服务器体系结构1.3 1.3 未来的数据库系统未来的数据库系统第二章第二章 数据库建模数据库建模Database
7、 Modeling20数据库的设计步骤数据库的设计步骤z需求收集和分析需求收集和分析z设计概念结构设计概念结构z设计逻辑结构设计逻辑结构z设计物理结构设计物理结构z物理实现物理实现21数据库的设计步骤数据库的设计步骤z需求收集和分析需求收集和分析y用户关心什么用户关心什么y用户要什么结果用户要什么结果z设计概念结构设计概念结构z设计逻辑结构设计逻辑结构z设计物理结构设计物理结构z物理实现物理实现22数据库的设计步骤数据库的设计步骤z需求收集和分析需求收集和分析z设计概念结构设计概念结构y存什么存什么y关系(联系)如何关系(联系)如何yODL或或E/R图,是各种数据模型的共同基础图,是各种数据模
8、型的共同基础z设计逻辑结构设计逻辑结构z设计物理结构设计物理结构z物理实现物理实现23数据库的设计步骤数据库的设计步骤z需求收集和分析需求收集和分析z设计概念结构设计概念结构z设计逻辑结构设计逻辑结构y用什么数据模型用什么数据模型y数据库的模式(数据库的模式(database schema)y用户子模式用户子模式z设计物理结构设计物理结构z物理实现物理实现24数据库的设计步骤数据库的设计步骤z需求收集和分析需求收集和分析z设计概念结构设计概念结构z设计逻辑结构设计逻辑结构z设计物理结构设计物理结构y数据怎么存数据怎么存y根据根据DBMS产品、环境特点产品、环境特点z物理实现物理实现25数据库的
9、设计步骤数据库的设计步骤z需求收集和分析需求收集和分析z设计概念结构设计概念结构z设计逻辑结构设计逻辑结构z设计物理结构设计物理结构z物理实现物理实现y运行运行DDLy装入测试数据装入测试数据y应用程序应用程序26数据库的设计步骤数据库的设计步骤想法想法需求需求ODLE/R关系关系RDBMSOODBMS272.1 ODLz对象定义语言对象定义语言y Object Definition Languagey以面向对象的观点、方法,说明数据库的概以面向对象的观点、方法,说明数据库的概念结构念结构y可方便地直接转换成可方便地直接转换成 OODBMS 的说明的说明y经过努力,可以转换成经过努力,可以转换
10、成 RDBMS 的说明的说明28面向对象的设计面向对象的设计z对象标识对象标识 OIDy对象与对象的区别对象与对象的区别z类类y具有相同特性的对象归为一类具有相同特性的对象归为一类y对象的归并必须有意义对象的归并必须有意义y属于同一类的对象其特性必须相同属于同一类的对象其特性必须相同29面向对象的设计面向对象的设计z对象的三个特性对象的三个特性y属性:特性属性:特性y联系:引用联系:引用y方法:函数方法:函数z接口说明接口说明interface 30z属性属性y对象某方面的特征,属性就是数据对象某方面的特征,属性就是数据y只由只由基本基本数据类型构成数据类型构成y属性的类型,不能是类、也不能从
11、类中构造属性的类型,不能是类、也不能从类中构造Interface Movie /Movie Class 的ODL说明attribute stringtitle;attribute integer year;attribute integer length;attribute enum Film color,blackAndWhite filmType;31Interface Star attribute stringname;attribute StructAddr string street,string city address;记录结构类型记录结构类型32z联系联系y对象的引用对象的引用
12、y对象的关联对象的关联y对象集合的引用(对象集合的引用(1:N)Relationship Set stars;y单一对象集合的引用(单一对象集合的引用(1:1)Relationship Star starOf;33z反向联系反向联系yODL要求显式表示存在的反向联系要求显式表示存在的反向联系Interface Movie/Movie Class 的的ODL说说明明attribute stringtitle;attribute integeryear;attribute integerlength;attribute enum Film color,blackAndWhite filmType;
13、relationship Set stars inverse Star:starredIn;/Star与与Movie的联系的联系;34z联系的多重性联系的多重性yN:Nx在联系中,每个在联系中,每个C都和都和D的集合有关,而在反向的集合有关,而在反向联系中,每个联系中,每个D都和都和C的集合有关的集合有关yN:1x在联系中,每个在联系中,每个C都和唯一的都和唯一的D有关,而在反向有关,而在反向联系中,每个联系中,每个D都和都和C的集合有关的集合有关y1:1 x在联系中,每个在联系中,每个C都和唯一的都和唯一的D有关,而在反向有关,而在反向联系中,每个联系中,每个D都和唯一的都和唯一的C有关有关
14、35zInterface Moiverelationship Set starsinverse Star:staredIn;relationship Studio ownedByinverse Studio:owns;zInterface Starrelationship Set staredIninverse Moive:stars;zInterface Studiorelationship Set ownsinverse Moive:ownedBy;NNN136zODL中的类型中的类型y基本类型基本类型x原子类型原子类型x接口类型接口类型y结构类型,可由以下类型组合而成结构类型,可由以下类
15、型组合而成x集合集合无重复,次序无关无重复,次序无关x包包可重复,次序无关可重复,次序无关x列表列表可重复,次序相关可重复,次序相关x数组数组x结构结构372.2 实体联系图(实体联系图(E/R)z用图形的方法,描述实体及实体间的联系用图形的方法,描述实体及实体间的联系z世界由一组称作世界由一组称作实体实体的基本对象及这些对象间的基本对象及这些对象间的的联系联系组成组成z元素元素y实体(实体(Entity)x客观存在并可相互区别的事件或物体客观存在并可相互区别的事件或物体x对应于对应于ODL中的对象中的对象y实体集(实体集(Entity Set)x同类(具有相同类型、相同性质)实体的集合同类(
16、具有相同类型、相同性质)实体的集合x对应于对应于ODL中的类中的类x用矩形表示用矩形表示382.2 实体联系图(实体联系图(E/R)z元素元素y属性(属性(Attribute)x实体所具有的某一特性实体所具有的某一特性x用与实体集相连的椭圆表示用与实体集相连的椭圆表示y联系(联系(Relationship)x实体集之间的关联实体集之间的关联x可涉及多个实体集可涉及多个实体集x可表示双向的联系可表示双向的联系x用与相应的实体集相连的菱形表示用与相应的实体集相连的菱形表示39MoviesStarsStars-inlenghtfilmTypetitleyearnameaddress40zE/R联系的
17、多重性联系的多重性yN与与1的表示的表示MoviesStarsStars-inStudiosPresidentsRunsMoviesStudiosOwns41z联系的多向性联系的多向性yE/R图能方便地描述两个以上实体集间的联系图能方便地描述两个以上实体集间的联系StarsMoviesContractsStudios一个制片公司与一位特定的影星签约来演一部特定的电影一个制片公司与一位特定的影星签约来演一部特定的电影 42z联系中的角色联系中的角色y实体集在联系中的作用实体集在联系中的作用y参与联系的实体集互异参与联系的实体集互异x只标注联系名只标注联系名y同一实体集在一个联系中多次出现同一实体
18、集在一个联系中多次出现x标注联系名及角色名标注联系名及角色名Sequel-ofMoviesOriginalSequelStarsMoviesContractsStudiosStudio of starProducing studio43z联系中的属性联系中的属性y联系中可以包含属性联系中可以包含属性x由联系而产生的属性由联系而产生的属性y可为由联系产生的属性建立实体集可为由联系产生的属性建立实体集StarsMoviesContractsStudiossalary44z将多向联系转换成二元联系将多向联系转换成二元联系y新增连接实体集新增连接实体集y引入连接实体集至原实体集的多对一的联系引入连接实
19、体集至原实体集的多对一的联系452.3 设计原则设计原则z真实性真实性y设计应当忠于规范设计应当忠于规范y存什么存什么z避免冗余避免冗余y任何事物只表达一次任何事物只表达一次z避免引入过多的元素避免引入过多的元素z选择合适的元素类型选择合适的元素类型y属性?属性?y类类/实体集?实体集?y联系集?联系集?462.4 子类子类z特殊化与概括特殊化与概括z子类与超类子类与超类z属性的继承属性的继承47zODL中的子类中的子类y子类继承其超类的所有特性子类继承其超类的所有特性x属性属性x联系联系Interface Cartoon:Movie relationship set voices;48zOD
20、L中的多重继承中的多重继承y类的层次类的层次y一个类可以有多个超类一个类可以有多个超类Interface MurderMystery:Movieattribute string weapon;Interface Cartoon-MurderMystery:Cartoon,MurderMystery 49zE/R中的子类中的子类yIsazE/R中的继承中的继承502.5 对约束的建模对约束的建模z建模包含对现实世界的对象及联系的描述,也建模包含对现实世界的对象及联系的描述,也包含对它们的一些约束包含对它们的一些约束y键码键码y单值约束单值约束y参照完整性约束参照完整性约束y域的约束域的约束y一般
21、约束一般约束51z键码键码y在类的范围内唯一标识一个对象(或者在实体集的在类的范围内唯一标识一个对象(或者在实体集的范围内唯一标识一个实体)的属性或属性集范围内唯一标识一个实体)的属性或属性集y一个类中的两个对象(或一个实体集中的两个实体)一个类中的两个对象(或一个实体集中的两个实体)在构成键码的属性集上取值不能相同在构成键码的属性集上取值不能相同yODL中键码的表示中键码的表示interface Movie(key(title,year)52z超码超码y一个或多个属性的集合,能在一个实体集中唯一地一个或多个属性的集合,能在一个实体集中唯一地标识一个实体标识一个实体y一个类(或实体集)中可能有
22、多个超码一个类(或实体集)中可能有多个超码z候选码候选码y其任意真子集都不为超码的超码其任意真子集都不为超码的超码y一个类(或实体集)中可能有多个候选码一个类(或实体集)中可能有多个候选码z主码主码y从候选码中选取的一个,一个类(实体集)中只有从候选码中选取的一个,一个类(实体集)中只有一个主码一个主码yE/R图中只能表示主码:主码属性名加上下划线图中只能表示主码:主码属性名加上下划线53z单值约束单值约束y要求某个角色的值是唯一的,如键码要求某个角色的值是唯一的,如键码y当一个属性为单值时当一个属性为单值时x可以要求该属性值存在(可以要求该属性值存在(not null)x可以允许该属性值任选
23、(可以允许该属性值任选(null)y构成键码的属性,必须有值存在(构成键码的属性,必须有值存在(not null)54z参照完整性约束参照完整性约束y要求由某个对象引用的值在数据库中确实存要求由某个对象引用的值在数据库中确实存在在y参照与被参照、引用与被引用参照与被参照、引用与被引用y参照完整性约束的操作(各产品不同)参照完整性约束的操作(各产品不同)x禁止删除被引用的对象禁止删除被引用的对象x级联删除级联删除/修改修改yE/R图中参照完整性的表示图中参照完整性的表示MoviesStudiosOwns552.6 弱实体集弱实体集z弱实体集弱实体集的属性不足以形成主码的属性不足以形成主码z有主码
24、的实体集称为有主码的实体集称为强实体集强实体集z弱实体集只有作为一对多联系的一部分(多)弱实体集只有作为一对多联系的一部分(多)才有意义才有意义z弱实体集与其拥有者之间的联系是弱实体集与其拥有者之间的联系是标识性联系标识性联系CrewsUnit-ofStudiosnumbernameaddr562.7 关于联系集关于联系集z联系集的成份联系集的成份y参加联系的实体集的主码参加联系的实体集的主码y联系集的属性联系集的属性z联系中属性的决策联系中属性的决策(二元联系二元联系)y1:1 联系集的属性:放到任意一端联系集的属性:放到任意一端y1:N 联系集的属性:放到联系集的属性:放到 N 端端yN:
25、M联系集的属性:只能留在联系集中联系集的属性:只能留在联系集中57z联系集的取舍(二元联系)联系集的取舍(二元联系)y1:1联系:将一端的主码作为另一端的属性联系:将一端的主码作为另一端的属性y1:N联系:将一端的主码作为联系:将一端的主码作为 N 端的属性端的属性yN:M联系:必须保留联系集联系:必须保留联系集z联系集的键码(二元联系)联系集的键码(二元联系)y1:1联系:任意一端的主码联系:任意一端的主码y1:N联系:联系:N端的主码端的主码yN:M联系:参加联系的所有实体集的主码联系:参加联系的所有实体集的主码58zODL、E/R建模建模y关心:存什么数据、关系如何关心:存什么数据、关系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 基础教程 PPT 完整版
限制150内