Access数据库基础 系列教学课件 安丘市职业中专 雷云龙
关系模型的特点 1)每一列不可再分; 2)同一关系中属性(字段)不允许重名 3)关系中不允许有完全相同的元组 4)关系中交换任意两行的位置不影响数据的实际含义; 5)关系中交换任意两列的位置不影响数据的实际含义。
关系的基本运算 1.选择 例题:从关系score1中选择数学大于90的元组组成关系S1。S1=σ数学>90(Score1) 从指定的关系中选择满足给定条件的元组组成新的关系。 例题:从关系score1中选择数学大于90的元组组成关系S1。S1=σ数学>90(Score1)
例题:从关系score1中选择“学号”、“姓名”、“数学”组成新的关系S2。 关系的基本运算 2.投影 从指定关系的属性集合中选取若干个属性组成新的关系。 例题:从关系score1中选择“学号”、“姓名”、“数学”组成新的关系S2。 S2=π学号,姓名,数学(Score1)
关系的基本运算 联接 两个关系中的元组按指定条件组合新的关系 例题:将score1和score2按相同学号合并
专门的关系运算——选择、投影、连接 关系 S1 关系 S2 关系 S3 投影运算 选择运算 学号 姓名 性别 状态 入学时间 最后登陆时间 登陆次数 39001 杨雨潇 男 在读 2007-9-1 2008-7-2 18 39002 崔敏 女 2008-7-4 25 39003 张进 2008-7-1 20 39004 何晴 2008-6-30 16 39005 李哲 19 39006 刘晓 22 专门的关系运算——选择、投影、连接 关系 S1 关系 S2 学号 姓名 性别 状态 入学时间 最后登陆时间 登陆次数 39001 杨雨潇 男 在读 2007-9-1 2008-7-2 18 39005 李哲 19 关系 S3 从关系的属性集合中选取指定的若干个属性组成新的关系 投影运算 S3=π学号,姓名,性别(S1) 从指定的关系中选择 满足给定条件的元组 组成新的关系 选择运算 S2=σ性别=”男”(S1)
关系S4 关系S6 关系 S3 连接运算 关系S7 学号 课程号 成绩 成绩类型 39001 8 85 39002 7 77 6 76 1 39002 7 77 6 76 1 90 39006 82 80 92 S6=π学号,课程号,成绩(σ成绩类型=0(S4)) 关系S6 在两个关系的所有元组组合中选择符合指定条件的元组,生成一个新的关系 连接运算 S7=S3 S6 关系 S3 关系S7
数据完整性控制 最大限度地保证数据的正确性、合法性和一致性 数据完整性 用户定义的完整性 允许用户自行定义对数据的约束条件,从语义上保证数据的合法性 。 实体完整性规则 关系中各个元组的主键不允许取空值、不允许重复。 参照完整性规则 在关系模型中,实体集之间的联系也用关系来表示 存在关系与关系间的引用 修改一个关系时,为保持数据的一致性,必须对另一个关系进行检查和修改。
如何保证数据的一致性? 在选课表中插入一个记录 ( 39078, 6, 90, 0 ) 取值参照 或取空值 在选课表中插入一个记录 ( 39078, 6, 90, 0 ) 删除学生表中记录(39001,杨雨潇, 男,在读,2007-9-1,2008-7-2,18) 如何保证数据的一致性?
由E-R图设计关系模型 1) 两个实体集 学生(学号,姓名,性别,年龄) 课程(课程代码, 课程名称, 任课教师) 2) 联系 选修(学号,课程代码,成绩) ↑ ↑ ↑ 两个实体集的主键 自身属性
根据概念数据模型设计关系数据模型 网上成绩查询管理系统的 E-R图
一个实体集转换为一个关系模式,实体集的属性就是关系的属性 院系(院系编号,院系名称) 班级(班号,班级名,学生数,班主任) 学生(学号,登陆密码,姓名,性别,状态,入校时间,毕业时间,退 学时间,注册时间,最后登陆时间,登陆次数) 这里“状态”有3种取值:在读、退学、毕业 教师(教师号,登陆密码,姓名,电话,邮箱,QQ号,找回密码问 题,找回密码答案,注册时间,最后登陆时间,登陆次数) 课程(课程号,课程名称,学分) 课程资源(资源号,资源名,链接地址,更新时间,资源类型,说明) 学期(学期号,学期名称,是否当前学期,学期起始时间,学期结束时 间)