版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第Z讲 总复习计算机软件及应用IT计算机专业资料16 八月 2022数据库原理讲座 周有顺第2页总复习数据库原理-现实世界数字化 (关注教学进度表内容安排中的引导词-加重黑体字)16 八月 2022数据库原理讲座 周有顺第3页一、数据库体系结构数据库通过三级模式的SPARC分级结构组织实施(体系结构图和工作原理图) 。特点:数据的独立性强(逻辑和物理的) 数据与应用程序的互不依存性。 数据的冗余度小数据的共享性高数据的一致性好数据的联系丰富 现实世界的较完整数字虚拟化,是含金量最高的数字资源。16 八月 2022数据库应用 周有顺第4页数据库系统的三级模式结构应用A应用B应用C应用D外模式1外
2、模式2外模式3概念模式内模式数据库外模式/概念模式映象概念模式/内模式映象16 八月 2022数据库应用 周有顺第5页数据库数据读写图(工作原理)16 八月 2022数据库应用 周有顺第6页什么叫数据库 数据库是一组相关数据的集合。这些数据避免了有害的冗余;能为不同用户所共享;数据的存贮独立于程序;对数据的插入、更新、检索等操作均能以一种通用的控制方法进行。 16 八月 2022数据库应用 周有顺第7页数据库系统的组成 数据库系统是用于组织和存取大量数据的管理系统;它是有关的计算机系统(硬件与基本软件);数据库及其描述机构;数据库管理系统(DBMS);用户及其应用程序以及数据库管理员DBA(D
3、ata Base Administrator)由这几个方面组成的具有高度组织的总体(或总和),这就是数据库系统。16 八月 2022数据库应用 周有顺第8页数据库技术所谓技术:往往是指较高的理论知识水平和大量的亲身实践经验的高度融合体。(如:骑自行车、游泳,又如:一个熟练老技工的待遇相当一个高级工程师)数据库技术:特指在计算机环境下如何高效地进行数据管理和数据处理的技术方法。 DBS=DBT+DBMS16 八月 2022数据库应用 周有顺第9页有关数据库应用方面的术语 DBMS、DBADBS、DBT数据独立性 数据的逻辑独立性、数据的物理独立性 概念数据库、用户数据库、物理数据库 模式、子模式
4、、存贮模式概念模式、外模式、内模式 DD受控冗余故障恢复16 八月 2022数据库原理讲座 周有顺第10页二、建模(ER模型、数据模型) 信息世界信息的表达方式实体的概念:实体弱实体递归实体复合实体超类实体(演绎、归纳)子类(继承)实体属性的概念:属性基本属性组合(复合)属性单值属性多值属性(需变换)衍生(导出)属性联系的概念:联系 - 联系的元数联系的连通词 - 联系的基数16 八月 2022数据库应用 周有顺第11页信息世界信息的表达方式两个实体间的三种联系方式 一对一(one-to-one)的联系。记为11。实体集A中的一个实体ai,实体集B中最多有一个实体bj与之相联系,反之亦然。(例
5、如夫妻关系:如图 (a)男性集M与女性集W。) 一对多(one-to-many)或多对一(Many-to-one)的联系。记为1m或m1。A集合中的一个实体ai,B集合中有一个实体子集Bs=bj1,bjn与之联系,反之B中的一个实体bj,实体集A中最多有一个实体ai与之相联系。这是两个实体集之间的一种较多的联系。 (例如亲生母子关系:如图(b)母亲集E与子女集F。) 多对多(many-to-many)的联系。记为mn。集合A中的一个实体ai,集合B中有一实体子集Bs=bj1,bjn与之联系;反之,集合B中的一个实体bj,集合A中也有一个实体子集As=ai1,ai2,aim与之联系。这是两个实体
6、集之间的一种较复杂的联系。 (例如学生选修课程关系:如图(c)学生集S与课程集C。)16 八月 2022数据库应用 周有顺第12页实体间的三种联系方式16 八月 2022数据库应用 周有顺第13页信息世界信息的表达方式多个实体间的三种联系方式 三个实体集间的三元联系。简称“Y”型联系,如图(a)。 (联系类型有:m:n:k、m:n:1、m:1:1、1:1:1) 三个以上实体集间的多元联系。简称星型联系。记为“”。 (联系类型可按三元联系类推。) 三个实体集间两两之间的二元联系。简称“”型联系,如图(b)。 三个以上实体集间两两之间的二元联系。简称多边型联系。记为“”。16 八月 2022数据库
7、应用 周有顺第14页多个实体间的三种联系方式16 八月 2022数据库应用 周有顺第15页信息世界信息的表达方式同一实体集个体间的二元联系 实体集内部的联系,例如职工实体集内上下级之间管理与被管理的联系,E-R图表示如图(a)所示; ISA包含联系,这是一种特殊的联系,即一个实体集包含于另一个实体集内。如一个工厂内的职工实体集和干部实体集,由于干部也是职工,所以干部实体集包含在职工实体集间的多种联系内,称这种联系为ISA联系,并用一有向线段表示,其方向由被包含实体集指向包含实体集,如图(b)所示。 注:二个实体集的型完全相同,而名不同,为了考虑冗余问题(实体冗余和联系冗余),需要分析这两个型相
8、同而名不同的实体集有无包含联系。 16 八月 2022数据库应用 周有顺第16页同一实体集个体间的二元联系 16 八月 2022数据库原理讲座 周有顺第17页例子: 如右ER图转换成关系模式为:学院(学院编号,学院名,地址,电话)院长(院长名,生日,性别,职称,学院编号,任职年月)或:院长(院长名,生日,性别,职称)学院(学院编号,学院名,地址,电话,院长名,任职年月)或:学院(学院编号,学院名,地址,电话)院长(院长编号,院长名,生日,性别,职称,学院编号,任职年月)或(推荐):学院(学院编号,学院名,地址,电话,院长编号)院长(院长编号,院长名,生日,性别,职称,任职年月)16 八月 20
9、22数据库应用 周有顺第18页三、关系模型及关系代数运算关系模型 R(D1,D2, ,Dm) 其中:允许域Di=Dj 或表达为RDM=, 其中: 域集=D1,D2, ,Dm 关系模式集=R1,R2, ,Rk Ri (A1, A2,An) Aj DL i=(1,2, ,k) j= (1,2, ,n) L= (1,2, ,m)注:关系模式仅仅描述了关系的结构,它本身不是关系的成员。16 八月 2022数据库应用 周有顺第19页关系的性质 每一列(属性)的值来自同一个域,因此列是同质的,即每一列中的各个值数据类型相同; 列的次序不影响关系的实际意义; 元组的次序也是无关紧要的,因为元组交换顺序不影响
10、关系的内容; 同一关系中不能有两个完全相同的元组存在,这是由集合的特性所决定的; 关系中任一属性值都必须是不可再分的元素,这一性质对于关系数据库的规范化是十分重要的; 关系随时间的推移可以变化;这是由于信息的变化与增加,将引起元组的插入、删除、更新; 关系与文件具有关系-文件、元组-记录、属性-数据项的对应关系。 这样,文件与关系类似:每一文件只包含有一种记录类型,每一记录有确定数目的数据项,记录在文件中的顺序无关紧要。16 八月 2022数据库应用 周有顺第20页关系代数关系运算 传统的集合运算-并、交、差运算。即要求关系R和关系S的关系模式相同。并(Union)运算 RS交(Interse
11、ction)运算 RS 差(difference)运算 RS 专门的关系运算选择运算(Selection) RNE 或 RNRE其中:表示选择命令,E表示选择运算中给定的条件,它的简单形式为: AB这里,A是属性,B是常量或属性,是比较算符,即,等而E的复杂形式是将简单形式通过逻辑运算与(),或(),非()连接而成。 投影运算(Project) RN=A (R) 或 RA 条件连接运算(Join) RNR F S 等值连接(自然连接Natural Join) RNRS 除法运算(Div) RS16 八月 2022数据库原理讲座 周有顺第21页三、关系代数运算书上3.123.133.1416 八
12、月 2022数据库应用 周有顺第22页传统的集合运算16 八月 2022数据库应用 周有顺第23页专门的关系运算16 八月 2022数据库应用 周有顺第24页关系代数运算表达式16 八月 2022数据库应用 周有顺第25页四、关系数据库SQL语言主要特点:语言简洁、易学易用:核心功能只有几个动词,语法简单,接近英语。见下表SQL功能操作符数据查询SELECT数据定义CREATE,DROP,ALTER数据操纵INSERT,UPDATE,DELETE数据统计(非动词)COMPUTER子句,WITH子句数据控制GRANT,REVOKE16 八月 2022数据库应用 周有顺第26页四、关系数据库SQL
13、语言SQL主要特点:语言简洁、易学易用:核心功能只有几个动词,语法简单,接近英语。见下表3. 高度非过程化的语言:用户只需提出“干什么”,至于“怎么干”由DBMS解决;用户只需要早查询语句中提出需要什么,DBMS即可按路径存取,并把结果返回给用户。4. 面向集合的语言:每一个SQL的操作对象是一个或多个关系,操作的结果也是一个关系。5. 即可独立使用,又可嵌入到宿主语言中使用,具有自主型和宿主型两种特点。6. 具有查询、操作、定义和控制四种语言一体化的特点。它只向用户提供一种语言,但该语言具有上述多种功能,且每中操作只需一种操作符。16 八月 2022数据库原理讲座 周有顺第27页四、关系数据
14、库SQL语言习题48假设某“仓库管理”关系模型有下列五个关系模式: 零件PART(PNO,PNAME,COLOR,WEIGHT) 项目PROJECT(JNO,JNAME,DATE) 供应商SUPPUER(SNO,SNAME,SADDR) 供应P_P(JNO,PNO,TOTAL) 采购P_S(PNO,SNO,QUANTITY)试用SQL DDL语句定义上述五个基本表,并说明主键和外键。试将PROJECT、P_P、PART三个基本表的自然联接定义为一个视图VIEWl,PART、P_S、SUPPLIER三个基本表的自然联接定义为一个视图VIEW2。试在上述两个视图的基础上进行数据查询: i检索上海的
15、供应商所供应的零件的编号和名字。 ii.检索项目J4所用零件的供应商编号和名字。-注意利用视图进行数据更新操作的有效性限制16 八月 2022数据库原理讲座 周有顺第28页解: CREATE TABLE PART(PNO CHAR(6),PNAME CHAR(10) NOT NULL,COLOR CHAR(6),WElGHT FLOAT(6),PRIMARY KEY(PNO); CREATE TABLE PROJECT(JNO CHAR(6),JNAME CHAR(12) NOT NULL,DATE DATE,PRIMARY KEY(JNO); CREATE TABLE SUPPLIER(SN
16、O CHAR(8),SNAME CHAR(12) NOT NULL,SADDR VARCHAR(30),PRIMARY KEY(SNO); CREATE TABLE P_P(JNO CHAR(6),PNO CHAR(6),TOTAL INTEGER,PRIMARY KEY(JNO,PNO) FOREIGN KEY(JNO) REFERENCES PROJECT(JNO), FOREIGN KEY(PNO) REFERENCES PART(PNO); CREATE TABLE P_S(PNO CHAR(6),SNO CHAR(8), QUANTITY INTEGER,PRIMARY KEY(PN
17、O,SNO) FOREIGN KEY(PNO) REFERENCES PART(PNO), FOREIGN KEY(SNO) REFERENCES SUPPLIER(SNO);16 八月 2022数据库原理讲座 周有顺第29页解: CREATE VIEW VIEWl AS SELECT A.JNO,JNAME,DATE,C.PNO,PNAME,COLOR,WEIGHT,TOTAL FROM PROJECT A,P_P B,PART C WHERE AJNOBJNO AND BPNOCPNO; CREATE VIEW VIEW2 AS SELECT APNO,PNAME,COLOR,WEIGHT
18、,CSNO,SNAME,SADDR,QUANTITY FROM PART A,P_S B,SUPPLIER C WHERE APNOBPNO AND BSNOCSNO; iSELECT PNO,PNAME FROM VIEW2 WHERE SADDR LIKE 上海; ii.SELECT SNO,SNAME FROM VIEWl,VIEW2 WHERE VIEWlPNOVIEW2PNO AND JNOJ4;16 八月 2022数据库原理讲座 周有顺第30页五、关系模式规范化 1.解释下列基本概念: 范式、1NF、2NF、3NF、4NF、BCNF 关键字与主属性 关系模式与关系的度 关系数据库模
19、式 关系与规范化 函数依赖 多值依赖 2.试证明: (1)满足BCNF的关系必满足3NF; (2)任何一个二元关系必是BCNF的; (3)任何一个二元关系必是4NF。 3.举列: (1)是1NF而不是2NF; (2)是2NF而不是3NF; (3)是3NF而不是BCNF ; (4)是BCNF而不是 4NF 。16 八月 2022数据库原理讲座 周有顺第31页并发调度:安排事务执行的次序称为调度;利用分时的方法同时处理多个事务,则称为事务的并发调度,也就是并发操作的调度。数据不一致性:数据库并发操作可能带来数据不一致的问题,主要有三种:丢失修改、读“脏”数据和不可重复读。可串行化调度:当且仅当多个
20、事务并发执行的结果与按某一次序串行执行其结果相同,则认为并发操作是正确的,并称这种调度策略为可串行化调度。封锁协议(Locking Protocol):封锁是实现并发控制的主要技术。封锁分排它锁(X锁)和共享锁(S锁)两种类型。对X锁或S锁何时申请(加锁)、何时释放(解锁)均有约定的规则,称之为封锁协议。共有三级封锁协议可分别达到系统一致性的不同级别,依次解决不丢失修改、不读“脏”数据、可重复读等问题。六、安全并发 16 八月 2022数据库原理讲座 周有顺第32页自身、参照、用户自定义完整性断言、规则的运用触发器的运用存储过程的运用权限与加密参考例题七、完整性安全性 在数据库xscjgl中创
21、建一个规则,并将其绑定到表xs中的学生助学金(zxj)列及表js中的教师奖金(jj)列上,使得用户输入的学生助学金和教师奖金都在01000的范围之内,否则提示输入无效。2. 在xscjgl数据库中建立名为TECH_INFOR的存储过程,带一个参数,用于接受 课程代码,显示该课程名称和任课教师信息。3. 在xscjgl数据库中创建一个存储过程单科成绩分析,当输入任意一个存在的课程名时,该存储过程将统计出该门课程的平均成绩、最高成绩和最低成绩。4. 在xscjgl库中为js表建立一个名为up_jsh的UPDATE型后触发器,其作用是当修改js表中的教师号(jsh)字段时,提示不能修改,并取消修改操作。5. 在xscjgl数据库中,为xx表建立一个名为del_xx的DELETE型后触发器,其作用是当删除学习表(xx)中的某个同学所有学习记录时,同时删除学生表(xs)中该学生档案信息的记录。6. 在xscjgl库中建立一个名为insert_kc的INSERT触发器,存储在kc表中。当用户向kc表中插入记录时,如果插入的课程名称重复3次以上则提示用户因为课程名称重复次数太多而不能插入记录,否则提示记录插入成功。16 八月 2022数据库应用 周有顺第33页八、表(关系)、视图、索引 解释下列基本概念: 范式 关键字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026福建泉州市丰泽区实验小学(东涂校区)招聘春季校聘教师模拟笔试试题及答案解析
- 现代农业技术推广方案及培训教材
- 小学二年级语文阅读提升方案
- 公司年度经营规划与实施方案
- 工程审计阶段实施及管控方案
- 2025年嘉兴海宁市教育系统事业单位赴天津职业技术师范大学招聘4人模拟笔试试题及答案解析
- 屋面除雪施工方案(3篇)
- 车间维护施工方案(3篇)
- 河道生物施工方案(3篇)
- 宣讲台施工方案(3篇)
- 2025广东广州市卫生健康委员会直属事业单位广州市红十字会医院招聘47人(第一次)笔试考试参考题库及答案解析
- 中国外运招聘笔试题库2025
- 建筑物拆除施工沟通协调方案
- 2025食品行业专利布局分析及技术壁垒构建与创新保护策略报告
- 2025四川省教育考试院招聘编外聘用人员15人考试笔试模拟试题及答案解析
- 特许经营教学设计教案
- 2025年智能消防安全系统开发可行性研究报告
- 胎儿窘迫课件
- 2025年国家开放大学《刑事诉讼法》期末考试备考试题及答案解析
- 论文导论范文
- (正式版)DB65∕T 4636-2022 《电动汽车充电站(桩)建设技术规范》
评论
0/150
提交评论