《数据结构域算法设计-第六讲 数据库技术 课件》由会员分享,可在线阅读,更多相关《数据结构域算法设计-第六讲 数据库技术 课件(30页珍藏版)》请在金锄头文库上搜索。
1、数据库技术l一、数据处理及其发展l二、数据组织l三、数据库设计l四、E-R模型一、数据处理l1、数据处理是对各种形式的数据进行收 集、储存、加工和传播的 一系列活动的 总和。l目的:从大量原始数据中抽取、推导出 有价值的信息, 作为行动和决策的依据 。2、数据处理的发展1、手工处理阶段(原始社会-十九世纪)工具:算盘,计算尺,微分机,基于齿轮的六位加法器特点:计算工具极低级,精度差,处理能力低,离不开手工 。2、机械处理阶段(1890-1946)工具:机械计算工具(卡片制表机)特点:机械代替了手工操作,数据处理能力、效率有所提高 ,但受机械性能限制。3、电子处理阶段(1946-)工具:计算机
2、Computer特点:速度快,存储量大,传输速度快,逻辑推理能力强、 不疲劳、 可靠性好、精度高,不但能进行科学计算而且能进行数 据处理。二、数据组织l1、数据结构:l指针与链l线性表l链表l树数据结构l指针与链LLINK左指针 INFO 信息 RLINK右指针NONAMEAGE 0152过容霞22 0256王三28 1234林杜25 2345梁昌勇24 0001李明28NONAMEAGENEXT信息域0152过容霞220256王三281234林杜252345梁昌勇240001李明28H链的逻辑结构图数据组织l2、数据文件(同类记录的集合)顺序文件(按某关键字排序的文件)索引文件(指示逻辑记录
3、与物理记录之间的 对应关系)散列文件(直接存取文件)l直接地址法l相对键法l杂凑法三、数据库设计l一)数据管理发展的阶段50年代时期,无操作系统、无管理软件 60年代初60年代末 ,数据管理属于操作系统 的一部分,出现了文件管理系统,负责对数 据进行管理 60年代后期 ,出现数据库管理系统(DBMS) 1、数据的集中控制管理:数据库中各个应用程序所使用的数据由数据库系统统一规定,按照一定的数据模型组织和建立,由系统统一管理和集中控制。 2、数据库的自含性:数据以及描述数据的数据共同构成数据库描述数据的数据: 负责描述和说明数据(数据模型),降低了程序和数据 的依赖性。 3、数据的独立性:由自含
4、性和数据库系统的结构决定(三级结构两级独立性) 4、更强的数据抽象能力:用户只需关心概念表示(逻辑结构),即库中的对象及其对象之间的关系,而数据的存储细节隐藏在数据字典中,由DBMS负责从逻辑描述到物理实现的映射。二)数据库系统的优越性 5、支持多视图:不同的用户根据各自的需要认识和使用数据库的一部分,而所有用户视图的综合构成数据库的整体逻辑描述。6、提供对完整性、安全性、并发和恢复四个方面的数据控制能力7、数据共享8、数据的冗余度小9、避免了数据的不一致性10、有利于实施标准化11、为用户提供了方便的用户接口12、平衡用户需求三)数据库系统(DBS)构成 四、实体联系模型 一)概念及术语 联
5、系的类型设A,B为两个包含若干个体的总体,1、一对一联系如果对于A中的一个实体,B中至多有一个实体与其发生联系,反之,B中的每一实体至多对应A中一个实体,则称A与B是一对一联系。 系系主任任职11病区科室主任任职112、一对多联系如果对于A中的每一实体,实体B中有一个以上实体与之发生联系,反之,B中的每一实体至多只能对应于A中的一个实体,则称A与B是一对多联系。 AB联系1n教研室教师联系1n3、多对多联系如果A中至少有一实体对应于B中一个以上实体,反之,B中也至少有一个实体对应于A中一个以上实体,则称A与B为多对多联系。 AB联系mn教师学生教学mn二)E-R设计实例三)如何建立实体-联系模
6、型 1、了解用户需要用数据库解决哪些问题2、根据问题,确定实体模型应包含哪些实体才能 满足用户需要解决的问题;3、这些实体中哪些实体是明显的;4、根据考虑问题的范围和角度,确定是否有实体 间的某种联系或某个实体的某个属性也应视为概念 存在的实体;5、根据现有技术条件,实际能够观测和存储哪些 实体和属性等。E-R图向关系数据模型的转换实体 实体集合 及 实体 联系 相关属性集合 加工、转换数 文件 据 记录 库 相关数据项集合数据世界DBMS的 数据模型信息世界E-R模型转换过程示意图转换过程示意图E-R图关系模型1 、实体相应转换为一个关系,实体名称作为关系名称,该关系包括对应实体的全部属性,
7、并确定出该关系的关键字。转换方法和原则2、联系a.联系具有属性:联系名作为关系名,发生联系的实体的主关键字 作为联系的主关键字。b.联系不具有属性:不带有属性的联系可以去掉。eg.库存(仓库号,器件号,数量)仓库(仓库号,城市,面积) 关系模式:对关系的描述,用关系名 (属性1,属性2,属性n)来表示。 转换举例一厂长号*姓名年龄厂长厂号*厂名地点工厂管理11厂长(厂长号,姓名,年龄)工厂(厂号,厂名,地点)管理(厂号,厂长号)转换举例二仓库号*地点面积仓库货号*品名价格产品存放1n仓库(仓库号,地点,面积)产品(货号,品名,价格)数量存放(仓库号,货号,数量)转换举例三学号*姓名年龄学生课程
8、号*课程名学时数课程学习mn学生(学号,姓名,年龄)课程(课程号,课程名,学时数)成绩学习(学号,课程号,成绩)e.g:在数据库设计中,根据用户要求,一般先建立能反映不 同实体间存在的各种联系,即ER图。如果一个教师可指 导多名研究生,且一名研究生可由多位教师指导,那么指 导教师与研究生间的这种指导联系便是( )A自联系B一对一(1:1)C一对多(1:N)D多对多(M:N)D有一“职工基本情况”的数据库文件,其记录由“职工 号”、“姓名”、“性别”、“年龄”、“籍贯”等数 据项组成,其中主键为( ) A年龄 B性别 C姓名 D职工号 Dnm学 生课 程选课学分课程号*课程名年龄姓名性别学号*解释下列ER模型图中各图形和线条代表的含义,并将其转化为关系模式设计题如果一个供应商可向多个顾客供应零件,一个顾客可买多种零件,每种零件可被多个顾客购买,一个顾客可购买多个供应商的零件。请你画出能满足上述联系的ER图(注:这里涉及到三个实体)