数据库系统原理与应用.ppt

上传人:za****8 文档编号:16906844 上传时间:2020-11-02 格式:PPT 页数:67 大小:1.23MB
收藏 版权申诉 举报 下载
数据库系统原理与应用.ppt_第1页
第1页 / 共67页
数据库系统原理与应用.ppt_第2页
第2页 / 共67页
数据库系统原理与应用.ppt_第3页
第3页 / 共67页
资源描述:

《数据库系统原理与应用.ppt》由会员分享,可在线阅读,更多相关《数据库系统原理与应用.ppt(67页珍藏版)》请在装配图网上搜索。

1、数据库系统原理与应用 第十讲 考试相关信息 考试时间 : 3.15日 8: 15-10: 15 考试地点 : I302 答 疑时间 : 3.14日 9: 00-11: 30 答疑地点:电机楼 210室 考试相关信息 考试题型: 一、填充 10分 二、选择 20分 三、简答 30分 四、应用 25分 五、程序设计 15分 总评成绩: 平时 30% 考试 70% 第章 数据库系统概述 第章 数据模型 数据库系统中的三种模型 (层次、网状、关系模型 ) -图的设计 数据管理技术的三个发展阶段 (人工、文件、数据库) 数据库系统的组成、三级模式结构 (概念模式、内模式、外模式) DBMS的四个主要功能

2、 (定义、存取、管理、建立维护 ) 第章 关系数据库 关系的完整性规则 (实体、参照、用户定义) 专门的关系运算 (选择、投影、连接、除) 关系代数在查询中的运用 补充的 第 4章 关系数据库规范化理论 函数依赖、完全函数依赖、部分函数依赖、传递 函数依赖 Armstrong公理(三个推理规则及推论) 闭包计算 范式规范化(规范化后能解决哪些问题) 无损分解(定义及运算) 第 9章 T-SQL基础 SQL分类( DDL、 DML、 DQL、 DCL) 表的创建、修改和删除命令 ( CREATE、 ALTER、 DROP) 数据的添加、修改和删除命令 ( INSERT、 UPDATE、 DELE

3、TE) 数据的查询命令( SELECT) 第 10章 SQL高级应用 SQL的高级查询 事务处理 游标的使用 第 11章 索引 3种索引类型 如何判断是否存在某一个索引(例 11.2) 第 13章 数据库完整性 SQL的强制数据完整性的约束机制 默认值(例 13.7) 规则的建立和绑定 第 14章 存储过程 第 15章 触发器 触发器的 2种类型 创建和使用 DML触发器(两个临时表) 存储过程的参数 编写简单的存储过程 关系代数表示各运算结果 =5 ( ) 书上第 29页 对关系作 行筛选 ,条件是属性 =5 A, C( ) 对关系的、 C二个属性作 投影 ( B = 5 ( ) ) =5

4、=“01”( ) 行筛选 字段投影 条件是与的关系式 同时作 投影与筛选 对关系、作 连接 , 条件是的第 3属性 =的第 2属性 3 = 2 A R.B R.C S.B S.C D 1 2 3 2 3 2 4 5 6 5 6 3 对关系、作 自然连接 , A B C D 1 2 3 2 4 5 6 3 (5) U V 对关系 U、 V作 除运算 , 设 U和 V的目数分别为 u和 v, 且 uv, v 。 用基本关系代数运算可定义除为: U V 1,2, ,u-v(U)-1,2, ,u-v(1,2, ,u-v(U) V)-U) A B C D a b c d a b e f c a c d

5、关系 U C D c d e f 关系 V A B a b c a R S u-v A B a b A,B(U) A B C D a b c d a b e F c a c d c a e f A,B(U) V 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号,成绩)。 用关系代数和 SQL命令完成下面查询。 1)查询先行课是 01001的课程名和课程号 。 课程名 ,课程号 (先行课 =“01001”(课程 ) SELECT 课程名 ,课程号 FROM 课程 WHERE 先行课 =01001 对于学生选课关系,其关系模

6、式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号,成绩)。 用关系代数和 SQL命令完成下面查询。 2)查询选修课程号为 01001,且成绩为 90分以上的 学生学号和成绩 。 学号 ,成绩 (课程号 =“01001”成绩 90(选课 ) SELECT 学号 ,成绩 FROM 选课 WHERE 课程号 = 01001 and 成绩 90 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号,成绩)。 用关系代数完成下面查询。 3)查询学过数据库课程的学生的姓名和学 号。 学生

7、课程 选课 课程名 =“数据库” (学生 课程 选课 ) 姓名 ,学号 (课程名 =“数据库” (学生 课程 选课 ) SELECT 姓名 ,学生 .学号 FROM 学生 ,课程 ,选课 WHERE 学生 .学号 =选课 .学号 and 课程 .课程号 =选课 .课程号 and 课程名 =数据库 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号,成绩)。 4)求学过数据库和数据结构两门课的学生姓名和学号 。 姓名 ,学号 (课程名 =“数据库” (学生 课程 选课 ) 姓名 ,学号 (课程名 =“数据结构” (学生 课程

8、 选课 ) SELECT 姓名 ,学生 .学号 FROM 学生 ,课程 ,选课 WHERE 学生 .学号 =选课 .学号 and 课程 .课程号 =选课 .课程号 and 课程名 =数据库 and 学生 .学号 in (select 学号 from 选课 ,课程 Where 课程 .课程号 =选课 .课程号 and 课程名 =数据结构 ) 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系) 课程(课程名,课程号,先行课) 选课(学号,课程号,成绩) 5)求没学过课程号为 C1的学生学号。 学号 (课程号 =“C1”(选课 ) 学号 (学生 ) SELECT 学号 FROM 学生

9、 WHERE 学号 NOT IN(SELECT 学号 FROM 选课 WHERE 课程号 =C1) 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号,成绩)。 6)求学过数据库的先行课的学生学号。 课程名 =“数据库” (课程 ) (课程名 =“数据库” (课程 ) 课程 .先行课 =选课 .课程号 选课 学号 (课程名 =“数据库” (课程 ) 课程 .先行课 =选课 .课程号 选课 ) select 学号 from 选课 where 课程号 =(select 先行课 from 课程 where 课程名 =数据 库 )

10、 带有明细清单的单据实体的 E-R图转换 成交单价 1 n 收 银 客户号 名称 地址 客户 电话 送货单 发生日期 付款方式 单据号 应付总额 1 n 选 购 n m 数 量 清单组成 品名 包装 条码 单价 商品 姓 名 收银员号 收银员 性 别 用 E-R图描述 送货单( 单据号 #, 客户号 ,收银员号 ,发生日期 , 付款方式 , 应付总额 ) 客户( 客户号 #, 客户名 , 地址 , 电话) 收银员( 收银员号 #, 姓名,性别 ) 商品信息( 条码 #, 品名 , 包装 , 单价) 送货清单( 单据号 #, 条码 #, 数量 , 成交单价) 最终得到如下五个关系模式: 闭包及计

11、算 ( 1) X(0)=X,i=0。 ( 2) 从 F中找出满足条件 VX(i)的所有函数 依赖 VW , 并把所有的 VW 中的属性 W组成 的集合记为 Z;也即从 F中找出那些其决定 因素是 X(i)的子集的函数依赖 , 并把由所有 这样的依赖的被决定因素组成的集合记为 Z 。 ( 3) 若 ZX(i), 则转 ( 5) 。 ( 4) 否则 , X(i+1)=X(i)Z, 并转 ( 2) 。 ( 5)停止计算,输出 X(i),即为 X+。 例 已知 R(U),U=A,B,C,D,E,G, R上的 FD集 F=ABC,CA,BCD,ACDB , DEG,BEC, CGBD,CEAG , X=

12、BD, 求 X , BDA 是否成立 ? (1)X( 0) =BD。 (2)X( 1) =BDEG (3)X( 2) =BCDEG (4)X( 3) =ABCDEG X =ABCDEG ABD ,故 BDA 成立 Z=EG BD=X(0) 闭包及计算 无损分解的测试方法 算法: 1)构造一 k行 n列的表,第 i行对应于关系模式 Ri, 第 j列对应属性 Aj。如 AjRi ,则第 i行 j列上放符 号 ai,否则放 bij。 2)逐个检查 F中的函数依赖,如函数依赖 XY ,则 在 X的分量中找相同的行,将这些行中 Y的分量改 为相同的符号,若有 aj则将 bij改为 aj,若无 aj,则

13、改为 bij。 3)反复进行第 2步 ,如果某行变成 a1,a2,a k,则 是 否具有无损。 A1 Aj An R1 Ri Rk si,j Aj在 Ri中 , aj Aj不在 Ri中 , bij 无损分解的测试方法 ( 1)构造一个 k行 n列表 S,其中: X Y R1 Ri Rk 若 Y值中有 aj,其它也改为 aj 若 Y值中无 aj,其它改为 bij(下标小) F的选择顺序可随意 无损分解的测试方法 ( 2) 依据函数依赖集 F进行修正: XY X Y R1 Ri Rk a1 an a2 分解 具有无损联接性 无损分解的测试方法 ( 3)判断条件: 使用游标 使用 DECLARE C

14、URSOR声明游标 使用 OPEN打开游标 使用 FETCH INTO提取数据 空否 使用 CLOSE关闭游标 使用 DEALLOCATE 释放游标 不空 空 例:利用游标打印每个学生的信息及平均分 上机练习 5 2.求 C1课程的成绩高于张三的学生学号和成绩。 另一种写法: 结果: 上机练习 5 2.求 C1课程的成绩高于张三的学生学号和成绩。 上机练习 5 3.求其他系中比自动化学院某一学生年龄小的学生。 上机练习 5 7.选修了 C1、 C2、 C3、 C7全部四门课程的学生的姓名。 错误 上机练习 5 7.选修了 C1、 C2、 C3、 C7全部四门课程的学生的姓名。 不用子查询的写法

15、: 上机练习 5 7.选修了 C1、 C2、 C3、 C7全部四门课程的学生的姓名。 第五部分 8.求至少选修了学号为 S2的学生所选修的全部课程 的学生的学号和姓名。 选课:表 第五部分 8.求至少选修了学号为 S2的学生所选修的全部课 程的学生的学号和姓名。 不需要 第五部分 9.选修了 C1课程,同时也选修 C2课程的学生学号。 方法 2: 上机练习 5 13.编写一个程序,计算各学院的总人数及男女 生的人数,生成下图的查询 错误 上机练习 5 13.编写一个程序,计算各学院的总人数及男女 生的人数,生成下图的查询 上机练习 5 13.编写一个程序,计算各学院的总人数及男女 生的人数,生

16、成下图的查询 上机练习 5 16.编写一个程序交叉表查询的程序,求出每位 同学的总成绩和平均成绩,生成结果如下图。 上机练习 5 16.编写一个程序交叉表查询的程序,求出每位 同学的总成绩和平均成绩,生成结果如下图。 上机练习 5 16.编写一个程序交叉表查询的程序,求出每位 同学的总成绩和平均成绩,生成结果如下图。 上机练习 6 21.输出每个班最高分的课程名和分数 错误 上机练习 6 21.输出每个班最高分的课程名和分数 上机练习 6 21.输出每个班最高分的课程名和分数 (方法 2) 上机练习 6 23.用游标方式输出所有学号、课程号和成绩等级 上机练习 6 23.用游标方式输出所有学号

17、、课程号和成绩等级( 方法 2) 上机练习 6 二 .1删除 factory数据库上各个表间的关系 上机练习 6 二 .2显示各职工的工资记录和相应的工资小计 上机练习 6 二 .3按性别和部门名的所有组合方式列出相应的 平均工资 上机练习 6 二 .5显示最高工资的职工号、姓名、部门名、工 资发放日期和工资 上机练习 6 二 .5显示最高工资的职工号、姓名、部门名、工 资发放日期和工资 (方法 2) 上机练习 6 二 .7显示所有平均工资低于全部职工平均工资的 职工号和姓名 上机练习 6 二 .9采用游标方式显示所有平均工资低于全部职 工平均工资的职工号和姓名 上机练习 7 一 .2在 sa

18、lary表的“职工号”和“日期”列创建 聚集索引,并且强制唯一性 上机练习 7 二 .1建立视图 view1,查询所有职工的职工 号、姓名、部门名和 2004年 2月份工资, 并按部门名顺序排列 上机练习 7 三 .1实施 worker表的“性别”列默认为“男”的 约束 删除该约束 上机练习 7 三 .2 实施 salary表的工资列值限定在 0到 9999的约束 删除该约束 上机练习 7 三 .3 实施 depart表的部门号 列值唯一的非聚集索引 的约束 或者 上机练习 7 三 .4 为 worker表建立外键 ”部门号 ”,参考 depart表的 部门号 列 上机练习 7 三 .5 建立一个规则 sex: 性别 =男 OR 性别 = 女,将其绑定到 worker表的性别列 删除该规则 上机练习 8 一 .2创建一个存储过程 Delworker删除 worker表中 指定的职工号记录 上机练习 8 二 .1 在表 depart上创建一个触发器 depart_update, 当更改部门号时同步更改 worker表中对应的部门号 上机练习 8 二 .2 在表 worker上创建一个触发器 worker_delete ,当删除职工记录时同步删除 salary表中对应职工 的工资记录

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!