《数据库》课件第1章-E-R模型.ppt

上传人(卖家):momomo 文档编号:5900391 上传时间:2023-05-14 格式:PPT 页数:32 大小:742.50KB
下载 相关 举报
《数据库》课件第1章-E-R模型.ppt_第1页
第1页 / 共32页
《数据库》课件第1章-E-R模型.ppt_第2页
第2页 / 共32页
《数据库》课件第1章-E-R模型.ppt_第3页
第3页 / 共32页
《数据库》课件第1章-E-R模型.ppt_第4页
第4页 / 共32页
《数据库》课件第1章-E-R模型.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

1、主键、外键与组合键主键、外键与组合键关系运算符关系运算符实体与实体间的关系实体与实体间的关系设有一个学生设有一个学生-课程数据库,包括学生关系课程数据库,包括学生关系Student、课程课程关系关系Course和选修关系和选修关系SC。StudentStuIDStuNameStuAgeStuSexDepName12001mary21女IS12002tom20男Math12003jack19男English12004nancy22女ISCourseIDCourseNameCredit1Computer22math33English3CourseSCStuIDCourseIDGrade120011

2、901200129212001395120021801200327612004382查询至少选修查询至少选修1号课程和号课程和3号课程的学生号码号课程的学生号码 首先建立一个临时关系首先建立一个临时关系K:CourseID13StuID,CourseID(SC)K查询选修了查询选修了2号课程的学生的学号号课程的学生的学号StuID(CousreID=2(SC)12001,12003查询选修了全部课程的学生号码和姓名。查询选修了全部课程的学生号码和姓名。StuID,CourseID(SC)CourseID(Course)StuID,StuName(Student)第一章第一章数据库基础数据库基础

3、-3E-R模型模型画画E-R图图转换转换E-R图为数据库中的表图为数据库中的表(1)一个遵循一个遵循E-R图的数据库在关系系统里可以表示为一组图的数据库在关系系统里可以表示为一组表。表。(2)常规实体是构成数据库的最基本的元素。常规实体是构成数据库的最基本的元素。(3)每个常规实体都对应于一张表。每个常规实体都对应于一张表。(4)属性对应表中的列属性对应表中的列(5)关系的每一种类型都关系的每一种类型都以不同的方式以不同的方式映射为关系数据库管映射为关系数据库管理系统里的表。理系统里的表。(6)表是用来存储和检索现实世界里的信息的,因此要以最表是用来存储和检索现实世界里的信息的,因此要以最优的

4、方式来创建它们,最重要的原则是应使用优的方式来创建它们,最重要的原则是应使用尽量少的尽量少的表及属性来描述现实世界表及属性来描述现实世界。假设一个学生只能完成一个项目,并且一个项目也只能由一个假设一个学生只能完成一个项目,并且一个项目也只能由一个学生完成。请画出学生完成。请画出E-R图。学生实体有属性学号,姓名,住址。图。学生实体有属性学号,姓名,住址。项目实体有属性项目号,项目名称。项目实体有属性项目号,项目名称。StudentProjectDoesStuIDStuNameStuAddressProjIDProjName一对一转换规则:一对一转换规则:每个实体对应一张表,选中其中任意一个实体

5、为其添加外键,该外键来每个实体对应一张表,选中其中任意一个实体为其添加外键,该外键来自于另一实体的主键。自于另一实体的主键。11StudentProjectDoesStuIDStuNameStuAddressProjIDProjNameStudent(StuID,StuName,StuAddress,ProjID)Project(ProjID,ProjName)11一个系只能对应一个系主任,一个系主任也只能在一个系一个系只能对应一个系主任,一个系主任也只能在一个系工作。请画出工作。请画出E-R图,并转换成表。系有属性系号,系名,图,并转换成表。系有属性系号,系名,系主任有员工号和员工名。系主任

6、有员工号和员工名。StudentDepartmentDoesStuIDStuNameStuAddressDepIDDepNamem1假设一个系可以有多名学生,而一名学生只能在一个系学习。假设一个系可以有多名学生,而一名学生只能在一个系学习。请画出请画出E-R图。学生实体有属性学号,姓名,住址。系实体有属图。学生实体有属性学号,姓名,住址。系实体有属性系号,系名称。性系号,系名称。一对多转换规则:一对多转换规则:每个实体对应一张表,其中每个实体对应一张表,其中“多多”对应的实体转换的表添加一个外键,对应的实体转换的表添加一个外键,这个外键来自于这个外键来自于“一一”对应实体的主键。对应实体的主键

7、。StudentDepartmentHasStuIDStuNameStuAddressDepIDDepNamem1Department(DepID,DepName)Student(StuID,StuName,StuAddress,DepID)一个宿舍能容纳多名学生,一个学生只能住宿在一个宿舍。一个宿舍能容纳多名学生,一个学生只能住宿在一个宿舍。请画出请画出E-R图,并转换成表。学生实体有属性学号,姓名,图,并转换成表。学生实体有属性学号,姓名,宿舍实体有宿舍号,容量。宿舍实体有宿舍号,容量。假设一个学生可以选修多门课程,一门课程也可以由多个学生选假设一个学生可以选修多门课程,一门课程也可以由多

8、个学生选修。请画出修。请画出E-R图,并转换成表。图,并转换成表。学生实体有属性学号,姓名,学生实体有属性学号,姓名,住址。课程实体有课程号,课程名,学分。住址。课程实体有课程号,课程名,学分。StudentCoursechooseStuIDStuNameStuAddressCourseIDCourseNamemnCredit多对多转换规则:多对多转换规则:每个实体对应一张表,其中每个实体对应一张表,其中“关系关系”也对应一张表,也对应一张表,“关系关系”对应的表对应的表中选择两个实体的主键组合作为中选择两个实体的主键组合作为“关系关系”表中的主键。表中的主键。GradeStudentCour

9、sechooseStuIDStuNameStuAddressCourseIDCourseNamemnCreditStudent(StuID,StuName,StuAddress)Course(CourseID,CourseName,Credit)SC(StuID,CourseID,Grade)Grade一个学生可以借阅多本书,一本书也可以由多个学生来借阅。请画一个学生可以借阅多本书,一本书也可以由多个学生来借阅。请画出出E-R图,并转换成表。图,并转换成表。学生实体有属性学号,姓名,住址,书实学生实体有属性学号,姓名,住址,书实体的属性有书号,书名,价格。体的属性有书号,书名,价格。每个员工都

10、有子女,如果员工不存在了,则数据库没有必要每个员工都有子女,如果员工不存在了,则数据库没有必要保存其子女的信息,子女实体是弱实体。弱实体使用双矩形保存其子女的信息,子女实体是弱实体。弱实体使用双矩形框表示,请画出框表示,请画出E-R图,并转换成表。图,并转换成表。EmployeeEmpNameEmpIDChildChildNameChildAge转换规则:转换规则:每个实体对应一张表,其中常规实体的主键成为弱实体的外键,同时这每个实体对应一张表,其中常规实体的主键成为弱实体的外键,同时这个外键也是弱实体的主键或主键的一部分。个外键也是弱实体的主键或主键的一部分。EmployeeEmpNameE

11、mpIDChildChildNameChildAgeEmployee(EmpID,EmpName)Child(EmpID,ChildName,ChildAge)员工实体有属性员工号,姓名,住址,员工又分为小时工和全职员工实体有属性员工号,姓名,住址,员工又分为小时工和全职员工,小时工有属性工作时间及小时工资,而全职员工属性有基员工,小时工有属性工作时间及小时工资,而全职员工属性有基本工资和奖金,请画出本工资和奖金,请画出E-R图并转换成表。超类与子类间用图并转换成表。超类与子类间用“十十”字相连。字相连。EmployeeEmpNameEmpIDEmpAddrHourlyEmployeeSala

12、riedEmployeeHoursWagesSalaryBonusEmployeeEmpNameEmpIDEmpAddrHourlyEmployeeSalariedEmployeeHoursWagesSalaryBonus转换规则:转换规则:每个实体对应一张表,每个子实体引入父实体的主键为自己的外键,同每个实体对应一张表,每个子实体引入父实体的主键为自己的外键,同时这个外键又是子实体的主键。时这个外键又是子实体的主键。Employee(EmpID,EmpName,EmpAddr)HourlyEmployee(EmpID,Wages,Hours)SalariedEmployee(EmpID,Sa

13、lary,Bonus)Animal实体有属性实体有属性AniID,AniName,Weight,Animal子子类有类有Fish,属性为,属性为Swim、子类、子类Reptile,属性,属性crawl及子及子类类Carnivore,属性,属性Eat_meat请画出请画出E-R图,并转换成表。图,并转换成表。(1)在数据库设计过程中,有些属性本身又进一步需要一些属性来在数据库设计过程中,有些属性本身又进一步需要一些属性来自我界定,这样这些属性就变成了实体。其中自我界定,这样这些属性就变成了实体。其中EmpAddr需要描述国需要描述国家,城市,社区,街道等信息。家,城市,社区,街道等信息。Empl

14、oyeeEmpNameEmpIDEmpAddrEmpNameEmpIDEmployeeSituatedEmpAddrCountryCityBlockStreet(2)如果有两个实体属性完全相同,则将两个实体合并。如果有两个实体属性完全相同,则将两个实体合并。PriceCodeNameStoryBookPriceCodeNameTextBookPriceCodeNameBook(3)通过抽取高层实体集的子集来组成低层实体集通过抽取高层实体集的子集来组成低层实体集,称为特化。称为特化。WeightAniIDAniNameAnimalSwimCrawlEat_meatAnimalWeightAniN

15、ameFishCarnivoreSwimEat_meatAniIDReptileCrawl(4)与特化相反,两个或多个实体有一些共有属性,我们建立与特化相反,两个或多个实体有一些共有属性,我们建立一个新的超类来简化引用,称为泛化。一个新的超类来简化引用,称为泛化。WeightAniIDAniNameFishSwimAnimalWeightAniNameFishCarnivoreSwimEat_meatAniIDReptileCrawlWeightAniIDAniNameReptileCrawl(1)有实体有实体Student,Department,Book,Course,根据对学校管理的理解,

16、请画出根据对学校管理的理解,请画出E-R图及分解成表。图及分解成表。(2)假设系统中添加了假设系统中添加了Teacher和和Staff实体,表示一个实体,表示一个教师可以教授多门课程,一门课程也可以由多个教师教授,教师可以教授多门课程,一门课程也可以由多个教师教授,如何画如何画E-R图及分解成表。图及分解成表。Student(StuID,StuName)Department(DepID,DepName)Book(BookID,BookName)Course(CourseID,CourseName)Staff(StaffID,StaffName)Teacher(Title)考虑某个考虑某个IT公

17、司的数据库信息:公司的数据库信息:1.部门具有部门具有DepID和和DepName。2.部门员工有部门员工有EmpID,EmpName。员工只在一个部门工作。员工只在一个部门工作。3.实习生有实习生有TrainID,TrainName。实习生只在一个部。实习生只在一个部门实习。门实习。4.项目有项目有ProjID,ProjName,StartTime,EndTime。5.一名员工可参与多个项目,一个项目也可由多个员工参一名员工可参与多个项目,一个项目也可由多个员工参与。不同员工参与相同项目花费时间不同。与。不同员工参与相同项目花费时间不同。6.每个实习生只能参与一个项目,一个项目可由多名实习每个实习生只能参与一个项目,一个项目可由多名实习生参与。生参与。Department(DepID,DepName)Employee(EmpID,EmpName,DepID)Project(ProjID,ProjName,StartTime,EndTime)EP(EmpID,ProjID,Hours)Trainee(TrainID,TrainName,DepID,ProjID)E-R图转换为表的规则图转换为表的规则

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《数据库》课件第1章-E-R模型.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|