文档详情

关系模型与关系代数.ppt

发布:2025-03-31约1.08万字共10页下载文档
文本预览下载声明

关系完整性约束条件举例:多对一联系的属性引用学生成绩管理数据库ScoreDB中,学生关系Student与班级关系Class之间存在多对一的“归属”联系。多对多联系的联系关系及属性引用学生成绩管理数据库ScoreDB中,假设每一个学生一个学期可以选修若干门课程,每一门课程同时有若干个学生选修,那么学生关系Student与课程关系Course之间存在多对多的“选修”联系,且课程的开课学期term和修读成绩score为联系属性。关系内部属性间的引用联系学生成绩管理数据库ScoreDB中,假设一门课程可能存在先修课程,且关系Course中的priorCourse属性用来存放先修课程的课程编号。课程关系Course中的priorCourse属性需要引用课程关系Course的主码“课程编号”courseNo。Class(classNo,className,institute,grade,classNum) Student(studentNo,studentName,sex,birthday,native,nation,classNo)图2-4实现“多对一”联系的属性引用1nStudent(studentNo,studentName,sex,birthday,native,nation,classNo) Score(studentNo,courseNo,term,score) Course(courseNo,courseName,creditHour,courseHour,priorCourse)图2-5实现“多对多”联系的联系关系及属性引用mnCourse(courseNo,courseName,creditHour,courseHour,priorCourse)图2-6实现关系内部属性间的引用联系关系完整性约束条件数据库模式导航图一个含有主码和外码依赖的数据库模式可以通过模式导航图来表示。关系完整性约束条件数据库模式导航图一个含有主码和外码依赖的数据库模式可以通过模式导航图来表示。关系Student与关系Class之间存在多对一的“归属”联系(一个班由多个学生组成,一个学生只能归属于某个班),通过外码classNo实现该联系。关系Course与关系Student之间存在多对多的“选修”联系。关系Score的主码是{studentNo,courseNo,term},显然同一个学生在同一个学期不允许修读同一门课程多次。关系Course的priorCourse属性参照本关系的主码courseNo属性关系完整性约束条件数据库模式导航图关系完整性约束条件数据库模式导航图一个含有主码和外码依赖的数据库模式可以通过模式导航图来表示关系Student与关系Class之间、关系Class与关系Institute之间、关系Teacher与关系Institute之间都存在多对一的“归属”联系。关系Course的priorCourse属性参照本关系的主码courseNo属性关系CourseClass与关系Course之间存在多对一的“开课”联系(每个学期一门课程可能开设多个教学班,一个教学班只讲授一门课程)。关系CourseClass与关系Classroom之间存在多对一的“上课”联系关系CourseClass与关系Teacher之间存在多对一的“授课”联系关系CourseClass与关系Student之间存在多对多的“选课”联系。关系SC的主码是{cClassNo,studentNo},显然同一个学生不允许选修同一个教学班的课程多次。关系完整性约束条件用户自定义完整性任何关系数据库管理系统都应该支持实体完整性和参照完整性。用户定义的完整性就是针对某一具体应用要求来定义的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。例如,限制关系中某些属性的取值要符合业务语义要求。限制关系中某些属性的取值之间需要满足一定的逻辑关系。限制关系中某属性集上的取值必须唯一。关系操作的特点是集合操作方式,即操作的对象和结果都是集合。这种操作方式也称为一次一个集合的方式。相应地,非关系数据模型的数据操作方式则为一次一个记录的方式。01关系模型中的关系操作有查询操作和更新操作(包括插入删除和修改)两大类。查询操作是关系操作中最主要的部分.查询操作又可以分为选择(select)、投影(project)、连接(join)、

显示全部
相似文档