《480数据库系统概论》由会员分享,可在线阅读,更多相关《480数据库系统概论(127页珍藏版)》请在金锄头文库上搜索。
1、脖安妄妥晚坞的拆艰儡艘锅退梆畏瀑痴髓毡埋削烁穗畅端栖赁艘乍梁尊邢480-数据库系统概论480-数据库系统概论上海商学院上海商学院SQLSQLhttp:/ An Introduction to Database SystemsAn Introduction to Database Systems2008省羔肖点干沉打添石瞳腿莫搜彪今十猫奔仍咎则拣纳蔬久躲遍追毛凹袄韭480-数据库系统概论480-数据库系统概论An Introduction to Database Systems教材及参考书教材及参考书(1)(1) 教材教材萨师煊,王珊:数据库系统概论萨师煊,王珊:数据库系统概论(第四版第四版)
2、高等教育出版社,高等教育出版社,2006.5 A First Course in Database Systems Jeffrey.D.Ullman, Jennifer Widom Dept. Of Computer Science Stanford University 竣痞钎缘踌卧黎添挝吞菩纬缉房辜威至孽宰涟蠢鸿蔽妖剥换伞俭耗托邑朱480-数据库系统概论480-数据库系统概论An Introduction to Database Systems教材及参考书教材及参考书(2)(2) 参考书参考书Date C J, An Introduction to Database System (Ed.
3、7), Addison-Wesley,2000 上机软件上机软件SQL2000 or 2005采帆律税俊玉莽畴题淤诺屎啥迹替噶憋喘撕束辽捆琴澄道呐萎橡西路颠赁480-数据库系统概论480-数据库系统概论An Introduction to Database Systems学习方式学习方式 听课 (启发式、讨论式) 读书 (预习、复习) 报告 (综合练习)妆轧袄际障绞愿毅委肆惯她婚夏轧驱颇叮蕴订学烷重楞青欲榷捉镍朔气您480-数据库系统概论480-数据库系统概论An Introduction to Database Systems内容安排内容安排(1) 基础篇第一章 绪论第二章 关系数据库第三章
4、 关系数据库标准语言SQL第四章 数据库安全性第五章 数据库完整性 设计与应用开发篇第六章 关系数据理论数据库设计第七章 数据库设计第八章 数据库编程碴迁轨圆闭降哈俄沟几疤菌陛梢痒加舅烁娱痛畅恭施珊给狠讳馅垒辟访粳480-数据库系统概论480-数据库系统概论An Introduction to Database Systems内容安排内容安排(2) 系统篇第九章 关系查询处理和查询优化第十章 数据库恢复技术第十一章 并发控制* 第十二章 数据库管理系统第一至第十一章是本科专业的基本教程(书中有*号的部分除外)第十二至第十七章是高级教程红译荐酝陋恩辜圾奥减蔬狠狮迅坍卞瞳旭桂纸办恫乞凯粳琼蔡伦拼刀
5、尺屠480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统概论数据库系统概论An Introduction to Database Systems第一章第一章 绪论绪论牟吝含挠吼攀尤墒曳泛妮拜奠蝶辽轻灯食喉辽蒙辰鳞杰翰性拂凋峨盘籽愁480-数据库系统概论480-数据库系统概论An Introduction to Database Systems第一章第一章 绪论绪论1.1 数据库系统概述数据库系统概述1.2 数据模型数据模型1.3 数据库系统结构数据库系统结构1.4 数据库系统的组成数据库系统的组成1.5 小结小结弦羞柱瓷秉
6、帆馅摔殿优割酋被捐先翔族亥先懦俯倦粥悲股辰夕龙睁揉坡哨480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库的地位数据库的地位v数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。v数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。v数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。函特思原辉谚瑶郭决示树度盈羊统郁床仔诚荔派锦绪锁行缨赶芽盎逃娄扩480-数据库系统概论480-数据库系统概论An Introduction to Databas
7、e Systems第一章第一章 绪论绪论1.1 数据库系统概述数据库系统概述 1.1.1 四个基本概念四个基本概念 1.1.2 数据管理技术的产生和发展数据管理技术的产生和发展 1.1.3 数据库系统的特点数据库系统的特点 候枷问伐需熄沏费卵斯去玫弘碧稽馒焦沧拣翌族腿郸继洽疤绎复京果厘晤480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1.1.1 四个基本概念四个基本概念v数据(Data)v数据库(Database)v数据库管理系统(DBMS)v数据库系统(DBS)啡搐杰瑰烩董码漳沟拿枷左骄呆旭沈羚仍啤汹访皑咏茂锥亮押会脸蹋怕允4
8、80-数据库系统概论480-数据库系统概论An Introduction to Database Systems一、数据一、数据v数据(Data)是数据库中存储的基本对象v数据的定义描述事物的符号记录v数据的种类文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等v数据的特点数据与其语义是不可分的步隋赌卸丽符悯保漾哉阑北馒绰缄筹林柏辱字赖征忱赣夺钢撩彪盒悍禾在480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据举例数据举例v数据的含义称为数据的语义,数据与其语义是不可分的。例如 93是一个数据语义1:学生某门课的成绩语
9、义2:某人的体重语义3:计算机系2003级学生人数语义4:请同学给出。蚜啮邮捆志党姜超拓港切卡哦极面晋焕虫屑摄画拳革掳怜泥航笨质哭醇贫480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据举例数据举例v学生档案中的学生记录(李明,男,197205,江苏南京市,计算机系,1990)语义:学生姓名、性别、出生年月、籍贯、所在院系、 入学时间解释:李明是个大学生,1972年5月出生,江苏南京市人,1990年考入计算机系请给出另一个解释和语义竖蔬颁殷撵戏聘塞迈倍柬授具澎像劳惫柜孩摘散粕特午淑舱鞍像互祭乏侈480-数据库系统概论480-数据
10、库系统概论An Introduction to Database Systems二、数据库二、数据库v数据库的定义数数据据库库(Database,简简称称DB)是是长长期期储储存存在在计计算算机机内内、有有组织组织的、的、可共享可共享的的大量大量数据的集合。数据的集合。v数据库的基本特征数据按一定的数据模型组织、描述和储存数据按一定的数据模型组织、描述和储存可为各种用户共享可为各种用户共享冗余度较小冗余度较小数据独立性较高数据独立性较高易扩展易扩展月右搭暇柏茂睁颁涧戏篡纠匡毗析坯脐屹条如幼症惋控札酉祷押籽倒茧篇480-数据库系统概论480-数据库系统概论An Introduction to D
11、atabase Systems三、数据库管理系统三、数据库管理系统v什么是DBMS位于用户与操作系统之间的一层数据管理软件。是基础软件,是一个大型复杂的软件系统 vDBMS的用途科学地组织和存储数据、高效地获取和维护数据仓犬鄙笆陇疽事怯蛮抽挨虾召劝瘟陋瘪瞻狗仆咨暴钥溶召忻岁长侠甘叙双480-数据库系统概论480-数据库系统概论An Introduction to Database Systems硬件平台硬件平台基础软件平台基础软件平台软件基础构架平台软件基础构架平台应用软件平台应用软件平台软件产品软件产品协同软件协同软件办公软件办公软件数据库系统数据库系统数据库系统数据库系统操作系统操作系统操
12、作系统操作系统 中间件中间件 应用服务器应用服务器数据库在计算机系统中的位置数据库在计算机系统中的位置甲辅坡刺啤履那蚂蜀蔚定待相指冻战靠送钵代履真狰境岩娜彩嵌碌惑狂幻480-数据库系统概论480-数据库系统概论An Introduction to Database SystemsDBMS的主要功能的主要功能数据定义功能数据定义功能 提供数据定义语言(DDL) 定义数据库中的数据对象数据组织、存储和管理数据组织、存储和管理 分类组织、存储和管理各种数据 确定组织数据的文件结构和存取方式 实现数据之间的联系 提供多种存取方法提高存取效率枪撵郎即扣险扳桔作赴农扛析旷鲍虱西眠徐感毁专仔报渍吗纫切腋毕逼
13、逗480-数据库系统概论480-数据库系统概论An Introduction to Database SystemsDBMS的主要功能的主要功能数据操纵功能数据操纵功能 提供数据操纵语言(DML) 实现对数据库的基本操作 (查询、插入、删除和修改)数据库的事务管理和运行管理数据库的事务管理和运行管理 数据库在建立、运行和维护时由DBMS统一管理和控制保证数据的安全性、完整性、多用户对数据的并发使用发生故障后的系统恢复洲烯膏胁武银淳悍咏运薯姆浸兄五卖零纯往咏瞎出蔬烙诅如娩犬翟未曳溃480-数据库系统概论480-数据库系统概论An Introduction to Database SystemsD
14、BMS的主要功能的主要功能数据库的建立和维护功能数据库的建立和维护功能(实用程序实用程序) 数据库初始数据装载转换 数据库转储 介质故障恢复 数据库的重组织 性能监视分析等其它功能其它功能 DBMS与网络中其它软件系统的通信 两个DBMS系统的数据转换 异构数据库之间的互访和互操作拷妇扮烫柱腔悍澡躁丹像买媚拼特载增逼渴枉壁千窍钎翟榔驭乙牙演肺文480-数据库系统概论480-数据库系统概论An Introduction to Database Systems四、数据库系统四、数据库系统v什么是数据库系统(Database System,简简称称DBS) 在计算机系统中引入数据库后的系统构成在计算
15、机系统中引入数据库后的系统构成v数据库系统的构成数据库数据库数据库管理系统(及其开发工具)数据库管理系统(及其开发工具)应用系统应用系统数据库管理员数据库管理员 糊闷辐螟磊势腾沁呛屈淬夸滁烦粪猎学蔬二溅秽襟钡烈蜘荣适杂顷级徒顽480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 数据库数据库 应用系统应用系统应用开发工具 操作系统 数数据据库库管管理理系系统统 数据库管理员数据库管理员用户用户用户 数据库系统数据库系统痢衅蛛铀误霖订者嘱肛雷垦察抹稀岂咯胖葡降搐除补掂贾严颓简冉蒋侯淑480-数据库系统概论480-数据库系统概论An I
16、ntroduction to Database Systems数据管理技术的产生和发展数据管理技术的产生和发展v什么是数据管理对数据进行分类、组织、编码、存储、检索和维护对数据进行分类、组织、编码、存储、检索和维护数据处理的中心问题数据处理的中心问题v数据管理技术的发展过程人工管理阶段人工管理阶段(20世纪世纪40年代中年代中-50年代中年代中)文件系统阶段文件系统阶段(20世纪世纪50年代末年代末-60年代中年代中)数据库系统阶段数据库系统阶段(20世纪世纪60年代末年代末-现在现在)番呸主呢找松恳黍胚躬诧忧东撑双箭兆眺书皮牵水瓮鼎词栓草肆巩灭勋皂480-数据库系统概论480-数据库系统概论
17、An Introduction to Database Systems1.1.3 数据库系统的特点数据库系统的特点v数据结构化v数据的共享性高,冗余度低,易扩充v数据独立性高v数据由DBMS统一管理和控制程颐搔约肆馆讨以察猿蛛垂棠彝毋沂萨炼烃阎波笺加肇较毖啄患举屎飞宁480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据结构化数据结构化v整体数据的结构化整体数据的结构化是数据库的主要特征之一 v整体结构化不再仅仅针对某一个应用,而是面向全组织不再仅仅针对某一个应用,而是面向全组织不仅数据内部结构化,整体是结构化的,数据之间具有联系
18、不仅数据内部结构化,整体是结构化的,数据之间具有联系v数据库中实现的是数据的真正结构化数据的结构用数据的结构用数据模型数据模型描述,无需程序定义和解释描述,无需程序定义和解释数据可以数据可以变长变长数据的最小存取单位是数据的最小存取单位是数据项数据项壬篡辅凉女疽俱汹纷蹄率彰捕世酬瓢储级苇名互较摔恒纱替肝虐面掐阔风480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据的共享性高,冗余度低,易扩充数据的共享性高,冗余度低,易扩充v数据库系统从整体角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用共享使用。v数据共享的好处减
19、少数据冗余,节约存储空间避免数据之间的不相容性与不一致性 使系统易于扩充糕撵戌烽炒模剁梳郑桓炼约勇艘轰吠瘩驭卓姑滚醉掂废庙禹艳傀未胀侧媚480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据独立性高数据独立性高v物理独立性指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序不用改变当数据的物理存储改变了,应用程序不用改变。v逻辑独立性指指用用户户的的应应用用程程序序与与数数据据库库的的逻逻辑辑结结构构是是相相互互独独立立的的。数数据据的
20、的逻逻辑结构改变了,用户程序也可以不变辑结构改变了,用户程序也可以不变。v数据独立性是由DBMS的二级映像功能来保证的哎约匈藤霄把恭洞冻碧信商馒昏篱贾磊穴熙属醇兵黍毋变简嗓欺郎恤践发480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据由数据由DBMS统一管理和控制统一管理和控制vDBMS提供的数据控制功能(1)数据的安全性(Security)保护保护数据,以防止不合法的使用造成的数据的泄密和破坏。(2)数据的完整性(Integrity)检查将数据控制在有效的范围内,或保证数据之间满足一定的关系。(3)并发(Concurrency
21、)控制对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。(4)数据库恢复(Recovery)将数据库从错误状态恢复到某一已知的正确状态。撇览控谣崇燎词刷助舔差折掳廷葡虐易孕萨饯具释箔播舱碧澜随闺业绎觅480-数据库系统概论480-数据库系统概论An Introduction to Database Systems应用程序与数据的对应关系应用程序与数据的对应关系(数据库系统数据库系统)DBMS应用程序应用程序1应用程序应用程序2数据库数据库数据库系统阶段应用程序与数据之间的对应关系 腹乓疟浚冗那锻评脆筑漏沃颖侯搏芬鼎弘且聂丁焰匣崎赣床蚁但命陕灾中480-数据库系统概论480-数据库
22、系统概论An Introduction to Database Systems 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型拣图售汾沈猴姬车弥夜座诚瘪付撒拦蚌醇迹旋信旋颇咏阿蔑蚁揖畏轨利板480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据模型数据模型v在数据库中用数据模型这个工具来抽象、表示和
23、处理抽象、表示和处理现实世界中的数据和信息。v通俗地讲数据模型就是现实世界的模拟。v数据模型应满足三方面要求能比较能比较真实真实地模拟现实世界地模拟现实世界容易容易为人所为人所理解理解便于在计算机上便于在计算机上实现实现谬公搁拓定咽海乌认纫剥蔬辕价影重笨鬼彼剖醒膘殊姨涪稳质梦街伐芦听480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2.1 两大类数据模型两大类数据模型v数据模型分为两类(分属两个不同的层次)(1) 概念模型概念模型 也称信息模型,它是按用户的观点来对数据和信息建也称信息模型,它是按用户的观点来对数据和信息建模
24、,用于数据库设计。模,用于数据库设计。 (2) 逻辑模型和物理模型逻辑模型和物理模型 逻逻辑辑模模型型主主要要包包括括网网状状模模型型、层层次次模模型型、关关系系模模型型、面面向向对对象象模型等,按计算机系统的观点对数据建模,用于模型等,按计算机系统的观点对数据建模,用于DBMS实现实现。物物理理模模型型是是对对数数据据最最底底层层的的抽抽象象,描描述述数数据据在在系系统统内内部部的的表表示示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。方式和存取方法,在磁盘或磁带上的存储方式和存取方法。捶励销钳园滔竹暗伙莉涝少谚猛阂轴啸松圾烁临年獭耐泣蛙田普请常锚优480-数据库系统概论480-数据库
25、系统概论An Introduction to Database Systems两大类数据模型两大类数据模型 (续续)v客观对象的抽象过程-两步抽象现实世界中的客观对象抽象为概念模型;现实世界中的客观对象抽象为概念模型;把概念模型转换为某一把概念模型转换为某一DBMS支持的数据模型。支持的数据模型。筏琐蹲章栋另瘪宇埂曰侠作卯严艳卫太轻稼箭迸掠犁溺院贤岗锐便愧紊男480-数据库系统概论480-数据库系统概论An Introduction to Database Systems两大类数据模型两大类数据模型 (续续)DBMS支持的数据模型支持的数据模型概念模型概念模型认识认识抽象抽象信息世界信息世界机
26、器世界机器世界现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程现实世现实世界界现实世界现实世界 概念模型概念模型数据库设计人员完成数据库设计人员完成逻辑模型逻辑模型 物理模型物理模型由由DBMS完成完成概念模型概念模型 逻辑模型逻辑模型数据库设计人员完成数据库设计人员完成剥韭废咎泊妆浩积弦帛堆黍毖痞醛驼汛藏捣艳氟戒侧菏拆逸磊感较坚站尹480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概
27、念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型律溅结矣巳值氟忻含族躬捣霸很瞻腆疵痕酱衬准帧绳侥所另绩兔缉搽赖妊480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2.2 数据模型的组成要素数据模型的组成要素v数据结构 v数据操作 v完整性约束条件街熟晋畔镀殷睦皖砸一它载删火泻铸拱活淤斡固盆隆睦款昏迹材扫罚殊唆480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 一、一、
28、数据结构数据结构v什么是数据结构描述数据库的组成对象,以及对象之间的联系v描述的内容与数据类型、内容、性质有关的对象与数据之间联系有关的对象v数据结构是对系统静态特性的描述留衫宾战卫钡蜡篡喧慢执实戴讽龄釉限阶景纪誉座纂治终搞光远骨宫瞳鹰480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 二、数据操作二、数据操作 v数据操作对数据库中各种对象(型)的实例(值)允许执行的 操作操作及有关的操作规则操作规则v数据操作的类型查询更新(包括插入、删除、修改)挛灵延管漱滁灌负肘因帽绩酮钧詹完带叛坎噬钾哺腮罢符钉骸苹仿卞坊烫480-数据库系统概
29、论480-数据库系统概论An Introduction to Database Systems 数据操作数据操作(续续) v数据模型对操作的定义操作的确切含义操作符号操作规则(如优先级)实现操作的语言v数据操作是对系统动态特性的描述请举例说明咕壹点雨鄙砌处藐畴吸便墨抗渐爹工迂凹炽牢衬帮螺冬腋膳腻猎需泽匡嫂480-数据库系统概论480-数据库系统概论An Introduction to Database Systems三、数据的完整性约束条件三、数据的完整性约束条件 v数据的完整性约束条件一组完整性规则的集合。完整性规则:给定的数据模型中数据及其联系所具有的制约和储存规则用以限定符合数据模型的数
30、据库状态以及状态的变化,以保证数据的正确、有效、相容。费币膊膛炯愚肃舒炒鄂捡寞短每显锤枉束容翅欧暗殃熏床习叔峡最矩棠穷480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 数据的完整性约束条件数据的完整性约束条件(续续)v数据模型对完整性约束条件的定义反映和规定本反映和规定本数据模型数据模型必须遵守的必须遵守的基本的通用的基本的通用的完整完整性约束条件。例如在关系模型中,任何关系必须满足性约束条件。例如在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。实体完整性和参照完整性两个条件。提提供供定定义义完完整整性性约约束束条
31、条件件的的机机制制,以以反反映映具具体体应应用用所所涉及的数据必须遵守的特定的语义约束条件涉及的数据必须遵守的特定的语义约束条件。份蚤颁此迪鲸呀寄让岗矽洽道真何装刹背咬茨部北库骡掐卓二卜蝉舍夏份480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型拴挫瘫哎
32、佰削惮洽隔政亡疲婶几督珠趟颊右恃耘镶柬贡盲朴黑想农讽议愉480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2.3 概念模型概念模型v信息世界中的基本概念v两个实体型之间的联系v两个以上实体型之间的联系v单个实体型内的联系v概念模型的一种表示方法v一个实例抹谊川胰锑磐袄又红都傣棒嫉匀喜岔撅氏捏倦深隔答睛悸颗魄拓昌迈妒梢480-数据库系统概论480-数据库系统概论An Introduction to Database Systems概念模型概念模型v概念模型的用途概念模型用于信息世界的建模概念模型用于信息世界的建模是现实世界到机
33、器世界的一个中间层次是现实世界到机器世界的一个中间层次是数据库设计的有力工具是数据库设计的有力工具数据库设计人员和用户之间进行交流的语言数据库设计人员和用户之间进行交流的语言v对概念模型的基本要求较强的语义表达能力较强的语义表达能力能够方便、直接地表达应用中的各种语义知识能够方便、直接地表达应用中的各种语义知识简单、清晰、易于用户理解简单、清晰、易于用户理解咯带撼嫩索古沂奇扫侵医氮腻少方冠饮稻勺娩伟匣康字滇苦邀扫帧劣砌僚480-数据库系统概论480-数据库系统概论An Introduction to Database Systems一、信息世界中的基本概念一、信息世界中的基本概念(1) 实体(
34、Entity) 客观存在并可相互区别的事物称为实体。客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念可以是具体的人、事、物或抽象的概念。(2) 属性(Attribute) 实体所具有的某一特性称为属性。实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。一个实体可以由若干个属性来刻画。 (3) 码(Key) 唯一标识实体的属性集称为码。唯一标识实体的属性集称为码。僳捧还偿邱锈篷袒亭滦哉析姬据儿娥团晴拴剪抢昌碟篇划醒蛮卢役嵌运愚480-数据库系统概论480-数据库系统概论An Introduction to Database Systems信息世界中的基本概念信息
35、世界中的基本概念(续续)(4) 域(Domain) 属性的取值范围称为该属性的域属性的取值范围称为该属性的域。 (5) 实体型(Entity Type) 用用实实体体名名及及其其属属性性名名集集合合来来抽抽象象和和刻刻画画同同类类实实体体称称为为实实体型体型(6) 实体集(Entity Set) 同一类型实体的集合称为实体集同一类型实体的集合称为实体集他汁蝴擒椭宰藐文母劲缔侩蕴缨魔篆寥槐灼丫瓢误濒扫掖娃丑模潜胳惭催480-数据库系统概论480-数据库系统概论An Introduction to Database Systems信息世界中的基本概念信息世界中的基本概念(续续)(7) 联系(Rel
36、ationship) 现实世界中事物内部以及事物之间的联系在信息世界现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体内部的联系和实体之间的联系。中反映为实体内部的联系和实体之间的联系。实体内部实体内部的联系通常是指组成实体的各属性之间的联系的联系通常是指组成实体的各属性之间的联系实体之间实体之间的联系通常是指不同实体集之间的联系的联系通常是指不同实体集之间的联系氰胆米卡昆曼有危杨妇娇舱庸褥袱工鲍缓握羌休攻猎掸辣指柬己套返重颐480-数据库系统概论480-数据库系统概论An Introduction to Database Systems二、两个实体型之间的联系二、两个实体型之间的联
37、系实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B用图形来表示两个实体型之间的这三类联系用图形来表示两个实体型之间的这三类联系 擂梗碰颇浚寿歼孕周丧燎赚靠让厕拴昭见痔赂墩暂空扩秒帚读印尸纱徊兼480-数据库系统概论480-数据库系统概论An Introduction to Database Systems二、两个实体型之间的联系(续)二、两个实体型之间的联系(续) v一对一联系(1:1) 实例一个班级只有一个正班长一个班级只有一个正班长一个班长只在一个班中任职一个班长只
38、在一个班中任职定义:定义: 如如果果对对于于实实体体集集A中中的的每每一一个个实实体体,实实体体集集B中中至至多多有有一一个个(也也可可以以没没有有)实实体体与与之之联联系系,反反之之亦亦然然,则则称称实实体体集集A与与实实体体集集B具有一对一联系,具有一对一联系,记为记为1:1 班级班级班级班级-班长班长班长班长111:1联系联系锨贞肝缓个拟尝德匆郡猖头息票颗嫉象耿让吟遭逼价封令乘凤混蒜壮元语480-数据库系统概论480-数据库系统概论An Introduction to Database Systems两个实体型之间的联系两个实体型之间的联系 (续续)v一对多联系(1:n)实例一个班级中有
39、若干名学生,一个班级中有若干名学生,每个学生只在一个班级中学习每个学生只在一个班级中学习定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中有有n个实体(个实体(n0)与之联系,反之,对于实体)与之联系,反之,对于实体集集B中的每一个实体,实体集中的每一个实体,实体集A中至多只有一个中至多只有一个实体与之联系,则称实体与之联系,则称实体集实体集A与实体集与实体集B有一对有一对多联系,记为多联系,记为1:n班级班级组成组成学生学生1n1:n联系联系吕脐啮骂涨鸣尘哼三吨蝴料扫五口乒足姑睛佯秸锄奄声贴屉熟涡应瞪垫晾480-数据库系统概论480-数据库系统概论An I
40、ntroduction to Database Systems两个实体型之间的联系两个实体型之间的联系 (续续)v多对多联系(m:n)实例课程与学生之间的联系:课程与学生之间的联系:一门课程同时有若干个学生选修一门课程同时有若干个学生选修一个学生可以同时选修多门课程一个学生可以同时选修多门课程定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中有有n个实体(个实体(n0)与之联系,反之,对于实)与之联系,反之,对于实体集体集B中的每一个实体,实体集中的每一个实体,实体集A中也有中也有m个实个实体(体(m0)与之联系,则称实体集)与之联系,则称实体集A与实体与实
41、体B具有多对多联系,记为具有多对多联系,记为m:n课程课程选修选修学生学生mnm:n联系联系腔猿潍顽释的挚毡畜椭或柄鞘谨枯办谐孝塔湛沉武索崖雾骏揪佩狐染项荆480-数据库系统概论480-数据库系统概论An Introduction to Database Systems三、两个以上实体型之间的联系三、两个以上实体型之间的联系v两个以上实体型之间一对多联系若实体集若实体集E1,E2,.,En存在联系,对于实体集存在联系,对于实体集Ej(j=1,2,.,i-1,i+1,.,n)中的给定实)中的给定实体,最多只和体,最多只和Ei中的一个实体相联系,则我们说中的一个实体相联系,则我们说Ei与与E1,E
42、2,.,Ei-1,Ei+1,.,En之间的联系之间的联系是一对多的是一对多的叶至掺颊稻搞椅圣骂笆早缺租媒郧腾寸迟苫语僧柿钎汕咯捉汀联呻究俐涉480-数据库系统概论480-数据库系统概论An Introduction to Database Systems两个以上实体型之间的联系两个以上实体型之间的联系(续续)v实例 课程、教师与参考书三个实体型课程、教师与参考书三个实体型一门课程可以有若干个教师讲授,一门课程可以有若干个教师讲授,使用若干本参考书,使用若干本参考书,每一个教师只讲授一门课程,每一个教师只讲授一门课程,每一本参考书只供一门课程使用每一本参考书只供一门课程使用课程课程讲授讲授教师教
43、师1m两个以上实体型间两个以上实体型间1:n联系联系参考书参考书n融全咖辣植虚垂蛆厂燥僚荧件逐赵垒啮忘烈熬遂驹高懊非沽察级拖掀痴蛊480-数据库系统概论480-数据库系统概论An Introduction to Database Systems两个以上实体型之间的联系两个以上实体型之间的联系(续续)v多个实体型间的一对一联系v两个以上实体型间的多对多联系实例 供应商、项目、零件三个实体型供应商、项目、零件三个实体型一个供应商可以供给多个项目多种零件一个供应商可以供给多个项目多种零件每个项目可以使用多个供应商供应的零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给每种零件可由不同
44、供应商供给供应商供应商供应供应项目项目mp两个以上实体型间两个以上实体型间m:n联系联系零件零件n休井渠实畔艳泵洱甥贞蕊虱脊退岁忌帽憎汀乖撤城拧翁蛀肋祥待状牙沟盆480-数据库系统概论480-数据库系统概论An Introduction to Database Systems四、单个实体型内的联系四、单个实体型内的联系v一对多联系实例 职工实体型内部具有领导与被领导的联系职工实体型内部具有领导与被领导的联系某一职工(干部)某一职工(干部)“领导领导”若干名职工若干名职工一个职工仅被另外一个职工直接领导一个职工仅被另外一个职工直接领导这是一对多的联系这是一对多的联系v一对一联系 请举例职工职工领
45、导领导1n单个实体型内部单个实体型内部1:n联系联系委翰袍闹辟盾袄赞字恃绩柒刃国哇斧汽膝理阎赃煌舌概黔牢藻翅侵牵吭腥480-数据库系统概论480-数据库系统概论An Introduction to Database Systems单个实体型内的联系单个实体型内的联系实体型实体型1联系名联系名mn单个实体型内的单个实体型内的m:n联系联系v多对多联系请举例矽窑焉斧匣蛤催聘衙笼帖村酬衔纽轮柠沧擒样顶枣偏碉盆萝阅薯熏咋射棋480-数据库系统概论480-数据库系统概论An Introduction to Database Systems五、五、 概念模型的一种表示方法概念模型的一种表示方法v实体联系方
46、法(E-R方法)用E-R图来描述现实世界的概念模型E-R方法也称为E-R模型骏拨乞罕唯绒溪谗火沮告割萤嘛轨仿洋池券唁叶田瓷晕倪陀洞份迅短咳蛀480-数据库系统概论480-数据库系统概论An Introduction to Database SystemsE-R图图v实体型用矩形表示,矩形框内写明实体名。v属性用椭圆形表示,并用无向边将其与相应的实体连接起来学生学生教师教师学生学生学号学号年龄年龄性别性别姓名姓名痈絮巴籍稗汀懊趟俘街厕奋怂吐茁妓鸿镇取陇劫叛贸任配呵撑臃脖刚望盾480-数据库系统概论480-数据库系统概论An Introduction to Database SystemsE-R图
47、图(续续)v联系联系本身: 用菱形表示,菱形框内写明联系名,并用无向边分别用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类与有关实体连接起来,同时在无向边旁标上联系的类型(型(1:1、1:n或或m:n) 交凸鲤驯慕雇掂断压泄傣爵毅惺削寄留烦旅测萤噪肚磁颁吞钓派燥夸迸控480-数据库系统概论480-数据库系统概论An Introduction to Database Systems联系的表示方法联系的表示方法实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mn
48、m:n联系联系实体型实体型B衔弛欠找铱梯旁寸盟的劝济博温李屯颐蔽讳押硒咱惶缀许猪烤观峰莆秘担480-数据库系统概论480-数据库系统概论An Introduction to Database Systems联系的表示方法示例联系的表示方法示例班级班级班级班级-班长班长班长班长111:1联系联系课程课程选修选修学生学生mnm:n联系联系班级班级组成组成学生学生1n1:n联系联系欠习能妈润揉横池赐抛吟痴慈颊读习畜堡隧喜镜费酥鞠甥尽苍哆兜报仅呛480-数据库系统概论480-数据库系统概论An Introduction to Database Systems联系的属性联系的属性课程课程选修选修学生学生
49、mn成绩成绩v联系的属性:联系本身也是一种实体型,也联系本身也是一种实体型,也 可以有属性。如果一个联系具可以有属性。如果一个联系具有属性,则这些属性也要用无有属性,则这些属性也要用无向边与该联系连接起来向边与该联系连接起来 臀常哑袜脸店停港吠际兰隐湛又愁珠阐霉狂挫姑迎产竿痔课敢剖醛骋陌芹480-数据库系统概论480-数据库系统概论An Introduction to Database Systems六、一个实例六、一个实例用E-R图表示某个工厂物资管理的概念模型v实体仓库: 仓库号、面积、电话号码零件 :零件号、名称、规格、单价、描述供应商:供应商号、姓名、地址、电话号码、帐号项目:项目号、
50、预算、开工日期职工:职工号、姓名、年龄、职称 纂狈名碧脯尽白吞乔括佛挂炬慧拙市探暇倔应斯耿乓晾带窜纸喇刃隅似皿480-数据库系统概论480-数据库系统概论An Introduction to Database Systems一个实例一个实例v实体之间的联系如下: (1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量。(2)一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,仓库和职工之间是一对多的联系。职工实体型中具有一对多的联系 (3)职工之间具有领导-被领导关系。即仓库主任领导若干保管员。(4)供应商、项
51、目和零件三者之间具有多对多的联系放厄粮观膛堂头墙没缅拒抒缠找扶简汤汞氧般屉峙茶烘梢邀挽涝退醒间蚂480-数据库系统概论480-数据库系统概论An Introduction to Database Systems一个实例一个实例孺厂胯为端惦仟笆沾秦碘辣伎烂能至伟威忌控佯受核挺救画蔗击槛桅脚窃480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型
52、1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型傀赣制奉箩丘食椽宣普撕酚勒琶磕伏跳烹瓤们健僧隔承让钮柠超朽等翌俩480-数据库系统概论480-数据库系统概论An Introduction to Database Systems 1.2.4 最常用的数据模型最常用的数据模型v非关系模型层次模型层次模型(Hierarchical Model)网状模型网状模型(Network Model)v关系模型(Relational Model) v面向对象模型(Object Oriented Model)v对象关系模型(Object Relational Model)儒
53、幢誓材谅驶态贤茵瓷相国敞酪捞炔粪耗捅厉饥盏吞愈庚笨即往冒持忠铸480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1.2.7 关系模型关系模型v关系数据库系统采用关系模型作为数据的组织方式 v1970年美国IBM公司San Jose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型 v计算机厂商新推出的数据库管理系统几乎都支持关系模型 碾比劲迪小位标则锹专筋卡禹逝世顾弓堤览寺混践政佑棒摸垦膏岿耪芥形480-数据库系统概论480-数据库系统概论An Introduction to Database Systems一、关系数据
54、模型的数据结构一、关系数据模型的数据结构 v在在用用户户观观点点下下,关关系系模模型型中中数数据据的的逻逻辑辑结结构构是是一一张张二二维维表表,它它由由行行和和列列组成。组成。学 号姓 名年 龄性 别系 名年 级2005004王小明19女社会学20052005006黄大鹏20男商品学20052005008张文斌18女法律2005学生登记表学生登记表属性属性元组元组酝腰曝儿车程液娇苗馁糊濒剐析促帮宗柞悦亦切辱咨培勘搓雌摈六挺泄严480-数据库系统概论480-数据库系统概论An Introduction to Database Systems关系数据模型的数据结构(续)关系数据模型的数据结构(续)
55、关系(关系(Relation)一个关系对应通常说的一张表元组(元组(Tuple)表中的一行即为一个元组属性(属性(Attribute) 表中的一列即为一个属性,给每一个属性起一个名称即属性名登艘跳桅耕捅垫丸兼还肋努浙寓里屋素讥靳题钨浓协盾候钧明磐抑恰版膳480-数据库系统概论480-数据库系统概论An Introduction to Database Systems关系数据模型的数据结构(续)关系数据模型的数据结构(续)主码(主码(Key)表中的某个属性组,它可以唯一确定一个元组。域(域(Domain)属性的取值范围。分量分量元组中的一个属性值。关系模式关系模式对关系的描述关系名(属性1,属性
56、2,属性n)学生(学号,姓名,年龄,性别,系,年级)帆迷零烂柏撵邓柬萍握蚂惰诧蛾句耍织愉哨吩隆蒸厘饺鸿裸吱耘真觅袍敖480-数据库系统概论480-数据库系统概论An Introduction to Database Systems关系数据模型的数据结构(续)关系数据模型的数据结构(续)例1学生、系、系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)系系 (系号,系名,办公地点系号,系名,办公地点)例2系、系主任、系与系主任间的一对一联系埋烩先充拿盔堑钻践摩福徘赞舔篆净夏凄瑰柒哑促酝拍魔羚尤噬剪犀痰兔480-数据库系统概论480-数据库
57、系统概论An Introduction to Database Systems关系数据模型的数据结构(续)关系数据模型的数据结构(续)例3学生、课程、学生与课程之间的多对多联系: 学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)课程(课程号,课程名,学分)选修(学号,课程号,成绩)选修(学号,课程号,成绩)蝉审莆蜗咐汕棱客嫡乍赔乃嘱唬下阎泡羌茹压脓吮婆释酉棍妻矫坎赞蜂恬480-数据库系统概论480-数据库系统概论An Introduction to Database Systems关系数据模型的数据结构(续)关系数据模型的数据结构
58、(续)v关系必须是规范化的,满足一定的规范条件关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不可分的数据项, 不允许表中还有表 图图1.27中工资和扣除是可分的数据项中工资和扣除是可分的数据项 ,不符合关系模型要求不符合关系模型要求 职工号姓名职 称工 资扣 除实 发基 本津 贴职务房 租水 电86051陈 平讲 师13051200501601122283图图1.27 一个工资表一个工资表(表中有表表中有表)实例实例 转刀式亲款疙赠纳蠢谨疼棵态韭帐棕舒入娇痰民睛格哪柯懊翼拭涕脑斩声480-数据库系统概论480-数据库系统概论An Introduction t
59、o Database Systems关系数据模型的数据结构(续)关系数据模型的数据结构(续)关系术语一般表格的术语关系名表名关系模式表头(表格的描述)关系(一张)二维表元组记录或行属性列属性名列名属性值列值分量一条记录中的一个列值非规范关系表中有表(大表中嵌有小表)表表1.2 术语对比术语对比 谓滨侍练瘦弦乃掉原筷腋插运餐协霸钻奋筑佑路界歪儿陷傻兢尚咕壮利烈480-数据库系统概论480-数据库系统概论An Introduction to Database Systems二、关系数据模型的操纵与完整性约束二、关系数据模型的操纵与完整性约束v数据操作是集合操作,数据操作是集合操作,操作对象和操作结
60、果都是关系操作对象和操作结果都是关系查询插入删除更新v数数据据操操作作是是集集合合操操作作,操操作作对对象象和和操操作作结结果果都都是是关关系系,即即若若干干元元组组的的集合集合v存存取取路路径径对对用用户户隐隐蔽蔽,用用户户只只要要指指出出“干干什什么么”,不不必必详详细细说说明明“怎怎么干么干”沿当姐畴拳榴豪恶三肿累婉撤痴斜焊干冠塘编旱玩眷茨绒整骇拇鸦唱扔咨480-数据库系统概论480-数据库系统概论An Introduction to Database Systems关系数据模型的操纵与完整性约束(续)关系数据模型的操纵与完整性约束(续)v关系的完整性约束条件 实体完整性参照完整性用户定
61、义的完整性饭麓慌拉羽拌炯躁蜘涅梅拓颧您褥依诗棋捉俊锡庸亢飘丙虫熙胞朋堑姨莫480-数据库系统概论480-数据库系统概论An Introduction to Database Systems三、关系数据模型的存储结构三、关系数据模型的存储结构v实体及实体间的联系都用表来表示v表以文件形式存储有的DBMS一个表对应一个操作系统文件有的DBMS自己设计文件结构页曙凑倒战即印没点织辜赚裕紊锅变辜冶痘亥泥柄尉斤许昨秋钢秆渊箱啊480-数据库系统概论480-数据库系统概论An Introduction to Database Systems四、关系数据模型的优缺点四、关系数据模型的优缺点v优点优点建立在严
62、格的数学概念的基础上建立在严格的数学概念的基础上概念单一概念单一实体和各类联系都用关系来表示对数据的检索结果也是关系关系模型的存取路径对用户透明关系模型的存取路径对用户透明具有更高的数据独立性,更好的安全保密性简化了程序员的工作和数据库开发建立的工作贺肿到叼瘤烧氦抠锁壬汁灯辰踪境弘盛税芥滔爽眠忿话稻狂池爆琳念较酶480-数据库系统概论480-数据库系统概论An Introduction to Database Systems关系数据模型的优缺点(续)关系数据模型的优缺点(续)v缺点缺点存取路径对用户透明导致查询效率往往不如非 关系数据模型为提高性能,必须对用户的查询请求进行优化 增加了开发DB
63、MS的难度蜀愿降蝴弓惋释溉绊氓星帅肿剃跪恫啥袄庭续踩塞汛曼建醒笆粮娥昏耐搪480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1.3 数据库系统结构数据库系统结构v从数据库管理系统角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构 v从数据库最终用户角度看(数据库系统外部的体系结构) ,数据库系统的结构分为:单用户结构主从式结构分布式结构客户服务器浏览器应用服务器数据库服务器多层结构等煞裴谎征吼节站椎滑税年幅粪哭班滴响聪滴驶蹄中蹋区艰栈换瘪壁馁春宰480-数据库系统概论480-数据库系统概论An Introducti
64、on to Database Systems数据库系统结构(续)数据库系统结构(续)1.3.1 数据库系统模式的概念数据库系统模式的概念 1.3.2 数据库系统的三级模式结构数据库系统的三级模式结构 1.3.3 数据库的二级映像功能与数据独立性数据库的二级映像功能与数据独立性 衷啡麦竖子酌襄歌存怜鞭烦祥饿桅磷斯凹哎耐莉氖楼律妊疏敝冀峻柔涕辐480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1.3.1 数据库系统模式的概念数据库系统模式的概念v“型” 和“值” 的概念型(Type)对某一类数据的结构和属性的说明值(Value)是型的
65、一个具体赋值例如学生记录型: (学号,姓名,性别,系别,年龄,籍贯)一个记录值: (900201,李明,男,计算机,22,江苏)总掣筒限诵费就防哪赞太顷促帆瘫祷玛哄方礼渡备滔钎斯涛篷矿辰冬邹招480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统模式的概念数据库系统模式的概念(续)(续)v模式(模式(Schema)数据库逻辑结构和特征的描述数据库逻辑结构和特征的描述是型的描述是型的描述反映的是数据的结构及其联系反映的是数据的结构及其联系模式是相对稳定的模式是相对稳定的v实例(实例(Instance)模式的一个具体值模式的一个
66、具体值反映数据库某一时刻的状态反映数据库某一时刻的状态同一个模式可以有很多实例同一个模式可以有很多实例实例随数据库中的数据的更新而变动实例随数据库中的数据的更新而变动觉弊柑荡支眉怖操爱撂螺挖磕婶导彝糜屿垄训聪耐京戌乖达和变度凤泄册480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统模式的概念数据库系统模式的概念 (续)(续)例如:在学生选课数据库模式中,包含学生记录、课程记录和学生选课记录 2003年的一个学生数据库实例,包含:2003年学校中所有学生的记录学校开设的所有课程的记录所有学生选课的记录 2002年度学生数据库
67、模式对应的实例与 2003年度学生数据库模式对应的实例是不同的 甜鞋感畴缕码锈赴程礁婉秆畏乱爪妒吓向杆添虱阳逊绷苛倪者疡山钧舱信480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统结构(续)数据库系统结构(续)1.3.1 数据库系统模式的概念数据库系统模式的概念 1.3.2 数据库系统的三级模式结构数据库系统的三级模式结构 1.3.3 数据库的二级映像功能与数据独立性数据库的二级映像功能与数据独立性 耿兹勇州鸵勤本擞釜递葡铆迄辊崇潍际薯关沥框涨车锌软晰辣焰尿愈处琵480-数据库系统概论480-数据库系统概论An Intro
68、duction to Database Systems1.3.2 数据库系统的三级模式结构数据库系统的三级模式结构v模式(Schema) v外模式(External Schema)v内模式(Internal Schema) 翁回属稼诗衡譬崩傣换组水洒幻滔钥践绍苑叔漠痪援渡言汛喂柞委租蛆园480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统的三级模式结构(续)数据库系统的三级模式结构(续)图1.28 数据库系统的三级模式结构 涪弦潞谍即近倒航契寿叮涪陌嗓选礼溜宦换畸拉磨郸酋遏忽忍陌详奔色毒480-数据库系统概论480-数据库
69、系统概论An Introduction to Database Systems一、模式(一、模式(Schema)v模式(也称逻辑模式)数据库中全体数据的逻辑结构和特征的描述数据库中全体数据的逻辑结构和特征的描述所有用户的公共数据视图,综合了所有用户的需求所有用户的公共数据视图,综合了所有用户的需求v一个数据库只有一个模式v模式的地位:是数据库系统模式结构的中间层与数据的物理存储细节和硬件环境无关与数据的物理存储细节和硬件环境无关与具体的应用程序、开发工具及高级程序设计语言无关与具体的应用程序、开发工具及高级程序设计语言无关形偶尊盎肉罚陌邮歧淫拖狐极蒲骸郊状恨慕院育祸何受载腆旱平棺煮轿百480-
70、数据库系统概论480-数据库系统概论An Introduction to Database Systems模式(续)模式(续)v模式的定义数据的逻辑结构(数据项的名字、类型、取值范围等)数据的逻辑结构(数据项的名字、类型、取值范围等)数据之间的联系数据之间的联系数据有关的安全性、完整性要求数据有关的安全性、完整性要求秒半递薛至吊闷职粱祷死恋森要阶寇凭秆寞零牲戚浩宣氏氧挤籍诫丁捂棠480-数据库系统概论480-数据库系统概论An Introduction to Database Systems二、外模式(二、外模式(External Schema)v外模式(也称子模式或用户模式)数数据据库库用用
71、户户(包包括括应应用用程程序序员员和和最最终终用用户户)使使用用的的局局部部数数据据的逻辑结构和特征的描述的逻辑结构和特征的描述数数据据库库用用户户的的数数据据视视图图,是是与与某某一一应应用用有有关关的的数数据据的的逻逻辑辑表表示示决奔远院炎茬防田柳冗凰遍声砾剑掌肘坡撩踢适编俄歹噎燎衣减一甥悬疹480-数据库系统概论480-数据库系统概论An Introduction to Database Systems外模式(续)外模式(续)v外模式的地位:介于模式与应用之间模式与外模式的关系:一对多外模式通常是模式的子集外模式通常是模式的子集一一个个数数据据库库可可以以有有多多个个外外模模式式。反反映
72、映了了不不同同的的用用户户的的应应用用需需求求、看看待待数据的方式、对数据保密的要求数据的方式、对数据保密的要求对对模模式式中中同同一一数数据据,在在外外模模式式中中的的结结构构、类类型型、长长度度、保保密密级级别别等等都都可以不同可以不同外模式与应用的关系:一对多同一外模式也可以为某一用户的多个应用系统所使用同一外模式也可以为某一用户的多个应用系统所使用但一个应用程序只能使用一个外模式但一个应用程序只能使用一个外模式赊闲狭卡根醉烂阮蜒渤且刨哭冒嚏意玫跋百囱吐辐舅眯暑到枣宫挡喘曳咎480-数据库系统概论480-数据库系统概论An Introduction to Database Systems
73、外模式(续)外模式(续)v外模式的用途n保证数据库安全性的一个有力措施保证数据库安全性的一个有力措施n每个用户只能看见和访问所对应的外模式中的数据每个用户只能看见和访问所对应的外模式中的数据辰境将蟹吭露劫锅饵悯仍乡遵撅谬市板薛臣对棒月弧嫌詹瞩退言内干忘吻480-数据库系统概论480-数据库系统概论An Introduction to Database Systems三、内模式(三、内模式(Internal Schema)v内模式(也称存储模式)是数据物理结构和存储方式的描述是数据物理结构和存储方式的描述是数据在数据库内部的表示方式是数据在数据库内部的表示方式记录的存储方式(顺序存储,按照记录的
74、存储方式(顺序存储,按照B树结构存储,树结构存储, 按按hash方法存储)方法存储)索引的组织方式索引的组织方式数据是否压缩存储数据是否压缩存储数据是否加密数据是否加密数据存储记录结构的规定数据存储记录结构的规定v一个数据库只有一个内模式扎纲尾洋轩渝缮曼达蛹扮卧踊盼插肖迪吕铣舞京踌偏渊捣荐程慨粪涛闪效480-数据库系统概论480-数据库系统概论An Introduction to Database Systems内模式(续)内模式(续)v例如学生记录,如果按堆堆存储,则插入一条新记录总是放在学生记录存储的最后最后,如右图所示链扰悍说荧扁蚊穷何宴涨堆邵忍叶椅节魏钮粹需鸭隧汀甜摩序溃暴屋榷巨480
75、-数据库系统概论480-数据库系统概论An Introduction to Database Systems内模式(续)内模式(续)v如果按学号升序存储,则插入一条记录就要找到它应在的位置插入,如图1.29(b)所示v如果按照学生年龄聚簇存放,假如新插入的S3是16岁,则应插入的位置如图1.29(c)所示 图1.29 记录不同的存储方式示意图窒桨渡苫讶摄响侄荐嘛臀季拽蜂兹睁翰碎草系言掺融居养蓑霍赏叮丢壶慌480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统结构(续)数据库系统结构(续)1.3.1 数据库系统模式的概念数据库
76、系统模式的概念 1.3.2 数据库系统的三级模式结构数据库系统的三级模式结构 1.3.3 数据库的二级映像功能与数据独立性数据库的二级映像功能与数据独立性 辐聚燎荔褐像呐竿悟虐抒僻轴议瑚抵弓待斡灼蝶殖铆聊招揍厘南窘淑泡壤480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1.3.3 数据库的二级映像功能与数据独立性数据库的二级映像功能与数据独立性v三级模式是对数据的三个抽象级别v二级映象在DBMS内部实现这三个抽象层次的联系和转换外模式模式映像模式内模式映像 叼钳篆拂铂狰墅族克斤吏锗辰惮没储虎输溺场才腰盘枚锁巢作史喻侧拽陵480-数
77、据库系统概论480-数据库系统概论An Introduction to Database Systems一、外模式模式映象一、外模式模式映象v模式:描述的是数据的全局逻辑结构v外模式:描述的是数据的局部逻辑结构 v同一个模式可以有任意多个外模式 v每一个外模式,数据库系统都有一个外模式模式映象,定义外模式与模式之间的对应关系v映象定义通常包含在各自外模式的描述中镑奢脊狠玖危秉弟婿猎辐熬救匈巳褒枝众叙杖怂艳奋拂稳舀婶千永后赁柱480-数据库系统概论480-数据库系统概论An Introduction to Database Systems外模式模式映象(续)外模式模式映象(续)保证数据的逻辑独立
78、性当当模模式式改改变变时时,数数据据库库管管理理员员修修改改有有关关的的外外模模式式模模式映象,使外模式保持不变式映象,使外模式保持不变应应用用程程序序是是依依据据数数据据的的外外模模式式编编写写的的,从从而而应应用用程程序序不不必必修修改改,保保证证了了数数据据与与程程序序的的逻逻辑辑独独立立性性,简简称称数数据的逻辑独立性据的逻辑独立性。疥昌坝悬住益趁存铬压气溅迈涛匹祝聂记拼远弱耻榜盅赣视嗅科立莫锌岿480-数据库系统概论480-数据库系统概论An Introduction to Database Systems二、模式内模式映象二、模式内模式映象v模式内模式映象定义了数据全局逻辑结构与存
79、储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的v数据库中模式内模式映象是唯一的v该映象定义通常包含在模式描述中帮勾测发字蛇唁壁粘氦渴疙镊籽隧阑卯炔乳卵据频卞其昨粉裁谱缮谁誊急480-数据库系统概论480-数据库系统概论An Introduction to Database Systems模式内模式映象(续)模式内模式映象(续)保证数据的物理独立性当当数数据据库库的的存存储储结结构构改改变变了了(例例如如选选用用了了另另一一种种存存储储结结构构),数数据据库库管管理理员员修修改改模模式式内内模模式式映映象象,使使模模式保持不变式保持不变应应用用程程序序不不受受影影响响。保保证证
80、了了数数据据与与程程序序的的物物理理独独立立性性,简称数据的物理独立性。简称数据的物理独立性。访夺答庄顽舒育侮焦崎呻腑牵瞥怖襄寄编企拳闸泳祟溯树咸苍排丹畅浑称480-数据库系统概论480-数据库系统概论An Introduction to Database Systems模式内模式映象(续)模式内模式映象(续)v数据库模式即全局逻辑结构是数据库的中心与关键 独立于数据库的其他层次 设计数据库模式结构时应首先确定数据库的逻辑模式拐井染怀警瞻企秧于廷晚送稿股惶沧啦爆仑壳平宿辗掳葫巍美陨郁蒸绸增480-数据库系统概论480-数据库系统概论An Introduction to Database Sys
81、tems模式内模式映象(续)模式内模式映象(续)v数据库的内模式依赖于它的全局逻辑结构独立于数据库的用户视图,即外模式独立于具体的存储设备 将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以达到较好的时间与空间效率 趁文砚炯沽律矗披骇读抬敞黑怪市尖筷普猫贾翘袭蚁拣烬取苏贰亨炊码慑480-数据库系统概论480-数据库系统概论An Introduction to Database Systems模式内模式映象(续)模式内模式映象(续)v数据库的外模式面向具体的应用程序定义在逻辑模式之上独立于存储模式和存储设备当应用需求发生较大变化,相应外模式不能满足其视图要求时,该外模式就
82、得做相应改动 设计外模式时应充分考虑到应用的扩充性 伴崩慢虏拓畏基搁黄灌泳纂钦豁知措靴氮慢柯娜邯销炭铝咋汽雁未王宿罐480-数据库系统概论480-数据库系统概论An Introduction to Database Systems模式内模式映象(续)模式内模式映象(续)v特定的应用程序在外模式描述的数据结构上编制的依赖于特定的外模式与数据库的模式和存储结构独立不同的应用程序有时可以共用同一个外模式v数据库的二级映像保证了数据库外模式的稳定性从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改 名婪歇冀绑短蝉避邀节鼎贵溉焦剐蜀汾蕊磐拿臂侧夏鼠丢插稼蒙逃迸桅蚕480-
83、数据库系统概论480-数据库系统概论An Introduction to Database Systems模式内模式映象(续)模式内模式映象(续)v数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去 v数据的存取由DBMS管理用户不必考虑存取路径等细节简化了应用程序的编制大大减少了应用程序的维护和修改 妇菏捍趁笼怯子愁嗡抄瞒咆闯础连驱普峦创塞搬豢柄怜麓瓤著奔梧建畅岳480-数据库系统概论480-数据库系统概论An Introduction to Database Systems第一章第一章 绪论绪论1.1 数据库系统概述数据库系统概述1.2 数据模型数据模型1.3 数据库系统
84、结构数据库系统结构1.4 数据库系统的组成数据库系统的组成1.5 小结小结蜜典士梦茂灌趣揭拢停询络胰佐阀畔钦首蚊壹鹰坡颓瞄劫震称估杜叶接黄480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1.4 数据库系统的组成数据库系统的组成v数据库v数据库管理系统(及其开发工具)v应用系统v数据库管理员争姥诈柑噬眼增灵谨暖趴书艳乓涎旬障剧辣酥丝熊迢枚强湍壶役惠始柒谁480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库系统的组成(续)数据库系统的组成(续)v硬件平台及数据库 v
85、软件 v人员 抠稚蹿讨熏佃傻漂晰贫暮败寞淌右吟晰丈座憋磨灭谢收窗辑裴熏抢喳怨司480-数据库系统概论480-数据库系统概论An Introduction to Database Systems一、硬件平台及数据库一、硬件平台及数据库v数据库系统对硬件资源的要求 (1) 足够大的内存操作系统操作系统DBMS的核心模块的核心模块数据缓冲区数据缓冲区应用程序应用程序氢饲裴颈耕碌模铲督账咸誉社络那剥舍薄辅索种都密锤清蹈味经锈坞岗薯480-数据库系统概论480-数据库系统概论An Introduction to Database Systems硬件平台及数据库(续)硬件平台及数据库(续) (2) 足够大
86、的外存 磁盘或磁盘阵列数据库数据库 光盘、磁带数据备份数据备份(3) 较高的通道能力,提高数据传送率孤烷霹沽拘伐厘札辞溶峦埔郡苫巫花瞎愉顾浴袱淬窖棒帆阔弃剁铣啃见顷480-数据库系统概论480-数据库系统概论An Introduction to Database Systems二、软件二、软件vDBMSv支持DBMS运行的操作系统v与数据库接口的高级语言及其编译系统v以DBMS为核心的应用开发工具v为特定应用环境开发的数据库应用系统痔秋抓通取么假蘑傻蛾婚蛊仅费剪塘粤舰焙河抓设童械锋二馏疟共抹掖五480-数据库系统概论480-数据库系统概论An Introduction to Database
87、Systems三、人三、人 员员v数据库管理员v系统分析员和数据库设计人员v应用程序员v用户籍稽合置周隙低时除阶豌裕携向伪岁货沦茵轴侮表辰辫目罪颖字购丢太汝480-数据库系统概论480-数据库系统概论An Introduction to Database Systems人人 员(续)员(续)图1.30 各种人员的数据视图 v不同的人员涉及不同的数据抽象级别,具有不同的数据视图,如下图所示勾搬含惰糟退媳讯卯笺告咖错逸钵辗景秦畸弧滓割帜角拟麻正葱养扑阂损480-数据库系统概论480-数据库系统概论An Introduction to Database Systems1. 数据库管理员数据库管理员(
88、DBA)具体职责: v1.决定数据库中的信息内容和结构v2.决定数据库的存储结构和存取策略v3.定义数据的安全性要求和完整性约束条件筑崭唉挤拜宣施障搐绞缝垣责矩笋总犯要娟吞拌曳荆寨竭纵伟券愁奖随票480-数据库系统概论480-数据库系统概论An Introduction to Database Systems数据库管理员数据库管理员(续续)v4.监控数据库的使用和运行周期性转储数据库数据文件日志文件系统故障恢复介质故障恢复监视审计文件斧喊殉娃觅廊抉夫拌崔侗蓬钞预睬坦吕玫柜昌捐腮喷岿紫迷吟去鞘翅汇迁480-数据库系统概论480-数据库系统概论An Introduction to Database
89、 Systems数据库管理员数据库管理员(续续)v5. 数据库的改进和重组性能监控和调优定期对数据库进行重组织,以提高系统的性能 需求增加和改变时,数据库须需要重构造盈症军劝爽磺谱涣吸痹园坑淌伸厦梯队材夏洽涌焰却谩跺战胜跺稳槛巾靠480-数据库系统概论480-数据库系统概论An Introduction to Database Systems2. 系统分析员和数据库设计人员系统分析员和数据库设计人员 v系统分析员 负责应用系统的需求分析和规范说明与用户及DBA协商,确定系统的硬软件配置参与数据库系统的概要设计十先癸道惑寥者腕缘孩医印摄坝林魏膏贫剐孕泡眶捅溉程刮糜济归我沿渔480-数据库系统概论
90、480-数据库系统概论An Introduction to Database Systems系统分析员和数据库设计人员系统分析员和数据库设计人员(续)(续)v数据库设计人员参加用户需求调查和系统分析确定数据库中的数据设计数据库各级模式窗负葱汕荤枚闸惶淖笼蓟线砍姿推竖洼沃著甲扬峰钵炼媒胺调鲤空遇寞缩480-数据库系统概论480-数据库系统概论An Introduction to Database Systems3. 应用程序员应用程序员v设计和编写应用系统的程序模块v进行调试和安装秤没轰闹候滴肠冉丸浊可蓄各非鼻侧都恃前株纤坠矽尉兆惰斗妮娃部莫篷480-数据库系统概论480-数据库系统概论An I
91、ntroduction to Database Systems4. 用户用户 用户是指最终用户(End User)。最终用户通过应用系统的用户接口使用数据库。 v1. 偶然用户不经常访问数据库,但每次访问数据库时往往需要不同的数据库信息 企业或组织机构的高中级管理人员刑茧扩拓铣渗掠不厄滤菇镊稀削齿衡垣陆塞责易贮蓉烦汝掇骚刃制捌混卯480-数据库系统概论480-数据库系统概论An Introduction to Database Systems用户(续)用户(续)v2. 简单用户主要工作是查询和更新数据库 银行的职员、机票预定人员、旅馆总台服务员v3. 复杂用户工程师、科学家、经济学家、科技工作
92、者等直接使用数据库语言访问数据库,甚至能够基于数据库管理系统的API编制自己的应用程序争袄茬蚀舟沁揭汲匈季觅柴您降中纽愁边丘雕代刷蛮飞稠氢帽柿盈勋朗核480-数据库系统概论480-数据库系统概论An Introduction to Database Systems第一章第一章 绪论绪论1.1 数据库系统概述数据库系统概述1.2 数据模型数据模型1.3 数据库系统结构数据库系统结构1.4 数据库系统的组成数据库系统的组成1.5 小结小结筹势吧沦宏罢撕杉顺愚擦钓锗琅承俊疆环瘩檀捕所巷姨醒熏徐玩替铝皑蔫480-数据库系统概论480-数据库系统概论An Introduction to Database
93、 Systems1.5 1.5 小结小结v数据库系统概述数据库的基本概念数据管理的发展过程v数据模型数据模型的三要素概念模型, E-R 模型三种主要数据库模型灿窍妮塞锰酚豫空析喘责砌夺仙阿拎朔狰踞账港涪赚溜位较棘诺粥巾冶痔480-数据库系统概论480-数据库系统概论An Introduction to Database Systems小结小结(续续)v数据库系统的结构数据库系统三级模式结构数据库系统两层映像系统结构v数据库系统的组成耙燕此法总战烧榨胡叔戍咀啼轴精龋淑咨昏涂彻霓贩乔突契牡熄豆帜醚舔480-数据库系统概论480-数据库系统概论An Introduction to Database Systems作业作业v作业本作业:1、7、8、9、12、20缅仑当多炊妆朗膛梯应围擅糯扦箩主哼矿蛾肋牺庭允叉茧抠倍缮畅摈钱干480-数据库系统概论480-数据库系统概论An Introduction to Database Systems