《数据库设计基础》由会员分享,可在线阅读,更多相关《数据库设计基础(32页珍藏版)》请在金锄头文库上搜索。
1、数据库设计基础Stillwatersrundeep.流静水深流静水深,人静心深人静心深Wherethereislife,thereishope。有生命必有希望。有生命必有希望数据库系统的基本概念数据库系统的基本概念n数据数据 数据是数据库研究和处理的对象。数据是数据库研究和处理的对象。 数据是具有语义和联系的。数据是具有语义和联系的。例:关于学生的数据是需要组织在一起的。例:关于学生的数据是需要组织在一起的。 (李明,男,(李明,男,19721972,江苏,计算机系,江苏,计算机系,19901990)n数据库数据库 数据库是长期存储在计算机外存,有组织,可共享的数据集合。 数据库就是计算机内存
2、放数据的仓库n数据库管理系统数据库管理系统(DBMS) 数据库管理软件。负责数据库中数据组织、操作、维护、控制及数据保护。n数据库管理员数据库管理员(DBA) 对数据库进行规划、设计、维护和监视对数据库进行规划、设计、维护和监视等工作的人员。等工作的人员。n数据库系统数据库系统 是指计算机系统引入数据库后的系统构是指计算机系统引入数据库后的系统构成。成。 数据库数据库、DBMS、DBA、系统硬件系统硬件和和系系统软件统软件组成。组成。用户用户用户用户用户用户应用系统应用系统应用开发工具应用开发工具DBMS操作系统操作系统DBDBA数数据据库库系系统统示示意意图图数据管理技术的发展数据管理技术的
3、发展n人工管理阶段人工管理阶段 n文件系统管理阶段文件系统管理阶段 n数据库系统管理阶段数据库系统管理阶段人工管理阶段人工管理阶段n数据不保存数据不保存n由应用程序管理数据由应用程序管理数据n数据不共享数据不共享n数据不具有独立性数据不具有独立性文件系统阶段文件系统阶段学籍管理部门:学籍管理部门:建立student文件学号学号学号学号姓名姓名姓名姓名性别性别性别性别20000121王林王林男男20000122张大民张大民男男课程管理部门:课程管理部门:建立建立course文件文件课程编号课程编号课程编号课程编号课程名称课程名称课程名称课程名称学时数学时数学时数学时数C01数据库原理数据库原理8
4、0C02C语言设计语言设计60学生成绩管理部门:学生成绩管理部门:建立建立score文件文件学号学号学号学号姓名姓名姓名姓名课程编号课程编号课程编号课程编号课程名课程名课程名课程名成绩成绩成绩成绩20000121王林王林C01数据库原理数据库原理8620000121王林王林C02C程序设计程序设计9120000122张大民张大民C01数据库原理数据库原理79n程序与文件相互依存程序与文件相互依存n数据冗余大数据冗余大n数据容易发生矛盾数据容易发生矛盾学籍处理程序学籍处理程序学生基本信息文件学生基本信息文件student课程处理程序课程处理程序课程基本信息文件课程基本信息文件course成绩处理
5、程序成绩处理程序成绩表信息文件成绩表信息文件score文件文件文件文件管理管理管理管理系统系统系统系统逻辑文件逻辑文件A程序程序A程序程序B程序程序C逻辑文件逻辑文件B逻辑文件逻辑文件CDBMSDBMS数据库系统阶段数据库系统阶段王林姓名姓名男20000121性别性别学号学号数据库原理课程名课程名80C01学时学时课程号课程号C01课程号课程号8620000121成绩成绩学号学号数据库系统的基本特点数据库系统的基本特点n数据的高共享性与低冗余性数据的高共享性与低冗余性 ( (注意:可以减少冗余,但无法避免一切冗余!)注意:可以减少冗余,但无法避免一切冗余!)n数据的独立性数据的独立性 物理独立
6、性物理独立性 逻辑独立性逻辑独立性n数据统一管理和控制数据统一管理和控制数据库系统的体系结构数据库系统的体系结构数据库系统在内部具有数据库系统在内部具有三级模式三级模式和和二级映射二级映射程序程序1程序程序2程序程序k程序程序j数据库数据库外模式外模式1外模式外模式n概念模式概念模式内模式内模式外模式外模式外模式外模式/ / / /模式映射模式映射模式映射模式映射模式模式模式模式/ / / /内模式映射内模式映射内模式映射内模式映射n模式模式(概念模式概念模式) 数据库系统中数据库系统中全局数据逻辑结构全局数据逻辑结构全局数据逻辑结构全局数据逻辑结构的描述的描述, ,DBA视图视图n外模式外模
7、式(子模式子模式或或用户模式用户模式) 用用户户的的数数据据视视图图,由由概概念念模模式式推推导导而而出出,给给出出每每个个用户的用户的局部数据局部数据局部数据局部数据描述。描述。 n内模式内模式(物理模式物理模式) 给给出出了了数数据据库库的的物物理理存存储储结结构构与与物物理理存存储储方方法法, ,系系统程序员视图。统程序员视图。三级模式三级模式 建建立立数数据据库库系系统统三三级级模模式式间间的的联联系系和和转转换换二级映射二级映射q 外模式模式映射外模式模式映射q 模式模式/ /内模式映射内模式映射图书馆三级关系示意图图书馆三级关系示意图书架书架书架书架子模式子模式A A按书名检索卡按
8、书名检索卡子模式子模式B B按书名检索卡按书名检索卡子模式子模式C C分类检索卡分类检索卡模式:模式:图书馆内部索书号图书馆内部索书号书名,作者名,分类号书名,作者名,分类号用户级用户级概念级概念级物理级物理级子模式子模式/ /内模式映射内模式映射模式模式/ /内模式映射内模式映射工号工号姓名姓名工资工资101李鹏李鹏1200102王霞王霞1100123苏武苏武1300124胡维胡维1240工号工号工号工号姓名姓名姓名姓名性别性别性别性别年龄年龄年龄年龄101李鹏李鹏男男52102王霞王霞女女32103陈江建陈江建男男38123苏武苏武男男29工号工号工号工号姓名姓名姓名姓名性别性别性别性别工
9、资工资工资工资年龄年龄年龄年龄地址地址地址地址部门部门部门部门101李鹏李鹏男男120052江苏江苏A102王霞王霞女女110032河南河南W103陈江建陈江建男男90038浙江浙江A123苏武苏武男男130029湖南湖南X124胡维胡维女女124024江西江西X125钟晓钟晓女女100021湖南湖南W用户级数据库用户级数据库概念级数据库概念级数据库物理级数据库物理级数据库103102101125124123数据模型数据模型按应用层次,数据模型分为按应用层次,数据模型分为n概念数据模型概念数据模型(概念模型概念模型)E-R图 面向客观世界和面向用户的数据模型,与具体面向客观世界和面向用户的数据
10、模型,与具体的的DBMS无关,与具体的计算机平台无关。无关,与具体的计算机平台无关。n逻辑数据模型逻辑数据模型(数据模型数据模型) 面向数据库系统的模型面向数据库系统的模型 层次模型、网状模型、关系模型层次模型、网状模型、关系模型n物理数据模型物理数据模型(物理模型物理模型) 面向计算机物理表示的模型面向计算机物理表示的模型 E-RE-R图图( (实体联系实体联系) ) E-R图图用用于于建建立立概概念念模模型型, ,它它将将现现实实世世界界的的要要求求转转化化为为实实体体、属属性性、联联系系等等几几个概念,以及它们间的连接关系。个概念,以及它们间的连接关系。n实体实体 客观存在并可相互区别的
11、事物称为实体客观存在并可相互区别的事物称为实体n属性属性 实体的特性实体的特性n联系联系 实实体体之之间间的的对对应应关关系系, ,反反映映事事物物之之间间的的相互关系相互关系有三种联系有三种联系: 1:1 1:1 一对一一对一 1:n 1:n 一对多一对多 m:n m:n 多对多多对多E-RE-R图的表示图的表示n实体型实体型 用矩形矩形表示,矩形框内写明实体名。n属性属性 用椭圆形椭圆形表示,椭圆形内写明属性名。 n联系联系 用菱形菱形表示,菱形框内写明联系名班长班长班级班级班级班级学生学生学生学生教师教师管管理理11包包含含1n教教授授mn例:例:学生选课子系统学生选课子系统 学生实体:
12、学号、姓名、班级学生实体:学号、姓名、班级 课程实体:编号、名称、性质、学分课程实体:编号、名称、性质、学分有关的语义如下:有关的语义如下:n每个学生可以选修多门课程;每个学生可以选修多门课程;n每门课程可以被多个学生选修;每门课程可以被多个学生选修;n每个学生选修的每门课程都有一个成绩每个学生选修的每门课程都有一个成绩学生学生课程课程选选修修学号学号姓名姓名班级班级编号编号名称名称性质性质学分学分成绩成绩nm关系模型的基本概念关系模型的基本概念关系模型由关系模型由v 关系数据结构关系数据结构v 关系操作关系操作v 关系完整性约束关系完整性约束学号学号学号学号姓名姓名姓名姓名班级班级班级班级2
13、000306100张倩倩张倩倩计算机计算机0312000305101王祥林王祥林英语英语0322003021111李亚红李亚红对外贸易对外贸易031关系数据结构关系数据结构主码主码关系模式关系模式 学生学生( (学号,姓名,班级学号,姓名,班级) )关系关系元组元组属性属性学生学生课程课程选选修修学号学号姓名姓名班级班级编号编号名称名称性质性质学分学分成绩成绩nm对外贸易对外贸易031李亚红李亚红200302111英语英语032王祥林王祥林2000305101计算机计算机031张倩倩张倩倩2000306100班级班级班级班级姓名姓名姓名姓名学号学号学号学号学生学生学生学生必修必修必修必修性质性
14、质性质性质4高等数学高等数学C024大学计算机大学计算机C01学分学分学分学分名称名称名称名称编号编号编号编号课程课程课程课程67C01200030510167C02200030610090C012000306100成绩成绩成绩成绩编号编号编号编号学号学号学号学号学生选课学生选课学生选课学生选课 关系完整性规则关系完整性规则n实体完整性规则实体完整性规则 主码的属性值不能为空值。n参照完整性规则参照完整性规则n用户定义完整性用户定义完整性四、关系的基本运算四、关系的基本运算n1选择n从指定的关系中选择满足给定条件的元组组成新的关系。n例题:从关系score1中选择数学大于90的元组组成关系S1
15、。n2投影n从指定关系的属性集合中选取若干个属性组成新的关系。n例题:从关系score1中选择“学号”、“姓名”、“数学”组成新的关系S2。n3联接n两个关系中的元组按指定条件组合新的关系n例题:将score1和score2按相同学号合并数据库设计数据库设计n需求分析需求分析n概念结构设计概念结构设计 产生产生E-RE-R图图n逻辑设计逻辑设计 将将E-RE-R图图转转换换为为数数据据库库系系统统支支持持的的关关系系模式模式n物理设计物理设计设计过程概述设计过程概述用户用户要求要求用户用户要求要求用户用户要求要求应用1应用2应用3局部概念局部概念模式模式局部概念局部概念模式模式局部概念局部概念模式模式总体总体概念模式概念模式逻辑逻辑模式模式内模式内模式外模式1外模式2外模式3应用程序应用程序1应用程序应用程序2应用程序应用程序31.需求分析阶需求分析阶段段2.概念模式设计阶段概念模式设计阶段3.逻辑模式设计阶段逻辑模式设计阶段4.物理模式物理模式 设计阶段设计阶段5.应用程序设计阶段应用程序设计阶段