同济大学数据库原理与设计习题课

上传人:宝路 文档编号:48196913 上传时间:2018-07-11 格式:PPT 页数:54 大小:4.09MB
返回 下载 相关 举报
同济大学数据库原理与设计习题课_第1页
第1页 / 共54页
同济大学数据库原理与设计习题课_第2页
第2页 / 共54页
同济大学数据库原理与设计习题课_第3页
第3页 / 共54页
同济大学数据库原理与设计习题课_第4页
第4页 / 共54页
同济大学数据库原理与设计习题课_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《同济大学数据库原理与设计习题课》由会员分享,可在线阅读,更多相关《同济大学数据库原理与设计习题课(54页珍藏版)》请在金锄头文库上搜索。

1、习题课11.单选题(10小题)2.关系模式设计(2题) E-R图 转换成关系模式3.关系操作(2题) 关系代数表达式 SQL语句表达式4.数据库管理(2题) 存储过程代码,测试用例及结果 触发器代码,测试用例及结果5.程序填空(5个空)-ADO.NET数据库访问技术2ER 模型的设计过程:数据库设计者的任 务是把现实世界中的数据以及数据间的联系抽 象出来,用“实体”、“属性”与“联系”来 表示。具体设计步骤为:3u 设计实体及其属性v 设计联系及其属性设某商业集团数据库中有3个实体集。一 是“公司”实体集,属性有公司编号、公司名 、地址等;二是“仓库”实体集,属性有仓库 编号、仓库名、地址等;

2、三是“职工”实体集 ,属性有职工编号、姓名、性别等。4实实体及其属性的描述公司与仓库间存在“隶属”联系,每个公 司管辖若干仓库,每个仓库只能属于一个公司管 辖;仓库与职工之间存在聘用联系,每个仓库可 聘用多个职工,每个职工只能在一个仓库工作, 仓库聘用职工有聘期和工资。5u 试画出ER图,并在图上注明属性、联系的类型。v 将ER图转换成关系模式集,并指出每个关系模式的 主键和外健。联联系及其属性的描述6仓库仓库 (仓库编仓库编 号,仓库仓库 名 ,地址,公司编编号)公司(公司编编号,公司名,地址)职职工(职职工编编号,姓名,性别别 ,仓库编仓库编 号,聘期,工资资)设某商业集团数据库中有3个实

3、体集。一是“商店”实 体集,属性有商店编号、商店名、地址等;二是“商品”实 体集,属性有商品号、商品名、规格、单价等;三是“职工 ”实体集,属性有职工编号、姓名、性别、业绩等。商店与商品间存在“销售”联系,每个商店可销售多种 商品,每种商品也可以放在多个商店销售,每个商店每销售 一种商品,有月销售量;商店与职工间存在着“聘用”关系 ,每个商店有许多职工,每个职工只能在一个商店工作,商 店聘用职工有聘期和月薪。问题:u 试画出ER 图,并在图上注明属性、联系的类型。 v 将ER图转换成关系模式集,并指出每个关系模式主键和外键。78性别姓名职工编号月薪聘期地址商店名商店编号规格商品名商品号职工商店

4、商品聘用销售单价业绩月销售量商店(商店编编号,商店名,地址)商品(商品号,商品名,规规格,单单价)职职工(职职工编编号,姓名,性别别,业绩业绩 ,商店编编号,聘期,月薪)销销售(商店编编号,商品号,月销销售量 )性别姓名职工编号月薪聘期地址商店名商店编号规格商品名商品号职工商店商品聘用销售单价业绩月销售量供应商、项目和零件三者之间具有多对多的联系。即 一个供应商可以供给若干项目多种零件,每个项目可以使 用不同供应商供应的零件,每种零件可由不同供应商供给 。实体描述如下:供应商: 供应商号、姓名、地址、电话号码、帐号。项目:项目号、预算、开工日期。零件:零件号、名称、规格、单价、描述。 u 试画

5、出ER 图,并在图上注明属性、联系的类型。 v 将ER图转换成关系模式集,并指出每个关系模式主键和外 键。910规格名称零件号供应量开工日期预算项目号地址姓名供应商号零件项目供应商供应电话号码单价帐号描述供应应(项项目号,供应应商号,零件号,供应应量 )供应应商(供应应商号,姓名,帐帐号,地址,电话电话 号码码)零件(零件号, 名称,描述,规规格,单单价) 项项目(项项目号,预预算,开工日期)111.大学教材管理信息系统包含下列实体及其属性: 库位:库位号,区域,具体位置; 教材:教材编号,教材名称,作者,出版日期,单价,出版社名称, 库位号,数量; 课程:课程号,课程名称,课程描述,学分,开

6、课系部,课程类型,教材编号; 教师:教师号,教师姓名,所属系部; 学生:学号,姓名,性别,专业; 研究生 :导师。2.上述实体之间的联系可描述为: 一类教材可存放在一个库位上,一个库位只能存放一类教 材; 一个出版社可出版多套教材,任一套教材只能归属于一个 出版社; 一门课程只能采用一套教材,一套教材可为多门课程选用 ; 一位教师可在一学期讲授多门课程,一门课程可由多位教 师来教,班级信息用以区别多位教师上同一门课程; 一名学生可选多门课程,一门课程可由多名学生选修; 研究生是学生的一个子类。u 试画出ER 图,并在图上注明属性、联系的类型。 v 将ER图转换成关系模式集,并指出每个关系模式主

7、键 和外键。1.根据上述需求分析,设计满足需求的E-R图; 库位教材学生教师出版社课程选用库存讲授选修出版数量日期学期班级成绩研究生isa导师2.将设计出的E-R图转换为关系模式。 库位(库位号,区域,具体位置); 教材(教材编号,教材名称,作者,出版日期,单价,出版社名称,库位号, 数量); 出版社(出版社名称,联系人,电话,地址,邮编,电子邮箱); 课程(课程号,课程名称,课程描述,学分,开课系部,课程类型,教材编 号); 讲授(教师号,课程号,班号,学期); 选课(学号,课程号,成绩); 教师(教师号,教师姓名,所属系部); 学生(学号,姓名,性别,专业) 研究生(学号,导师)关系模型中

8、常用的操作如下:u交 v并w差x笛卡儿积y投影选择联接 15自然连接 除法:设有关系R(X,Y)和S(Y),其中X、Y可 以使单个属性或属性集,则除法运算定义为:1617选择运算是从指定的关系中选择某些元组 形成一个新的关系,被选择的元组是用满足某 个逻辑条件来指定的。选择运算表示为:其中R是关系名,是选择运算符,F是逻 辑表达式。u选择指定的属性,形成一个可能含有重复行的表;v删除重复行,形成新的关系。18投影运算对指定的关系进行投影操作,分两步产生一个新关系:定义 从两个关系的广义笛卡儿积中选取给定属性间满足一 定条件的元组 A,B为R和S上度数相等且可比的属性列 为算术比较符,为等号时称

9、为等值连接19A BR S = rs | rR sS rAsB R S = rAsB( RS)A B定义 从两个关系的广义笛卡儿积中选取在相同属性列B上取 值相等的元组,并去掉重复的行。 自然连接与等值连接的不同 自然连接中相等的分量必须是相同的属性组,并且要 在结果中去掉重复的属性,而等值连接则不必。 当R与S无相同属性时,R S RS20象集(Image Set)o关系R(X , Z), X、Z是属性组,x是X上的取值,定义x在R中 的象集为 Zx = tZ | tR tX= x o 从R中选出在X上取值为x的元组,去掉X上的分量,只留Z 上的分量21X Z张军张军 同学所选选 修的全部课

10、课程 x=张军张军Zx姓名课程张军物理王红数学张军数学课程数学物理除定义 R(X , Y) S(Y) = x | x=rX rR Yx y(S) R(X , Y) S(Y) = trX| trR Yx y(S)R S是R中满足下列条件的元组在X属性列上的投影:元组 在X上的分量值x的象集Yx包含S在Y上投影的集合中。22设有关系模式: S(snum,sname,age,sex) SC(snum,cnum,grade) C(cnum,cname,teacher) 试用关系代数表达式表达每个查询语句。 u检索学习课程号为C2的学生学号与成绩。23v 检索学习课程为C2的学生学号与姓名。w 检索选修

11、课程名为Maths的学生学号与姓名。x 检索选修课程号为C2或C4的学生学号。24y 检索至少选修课程号为C2和C4的学生学号。 检索不学课程号为C2的学生姓名与年龄。25检索学习全部课程的学生姓名。检索所学课程包含学生S3所学课程的学生学号 。26Select 属性名|表达式|聚合函数 From 表 Where 条件 Group by 属性名 Having 条件 Order by 属性名或表达式 asc|desc27查询的结果也是表不允许出现聚合函数查询条件 谓词算术比较、=、=、!、!=确定范围BETWEENAND、NOT BETWEENAND集合属于IN、NOT IN字符匹配LIKE、N

12、OT LIKE空值判断IS NULL、IS NOT NULL逻辑运算AND 、OR 、 NOT 281.检索学习课程号为C2的学生学号与成绩。 2.检索学习课程为C2的学生学号与姓名。 3.检索选修课程名为Maths的学生学号与姓名。 4.检索选修课程号为C2或C4的学生学号。 5.检索至少选修课程号为C2和C4的学生学号。 6.检索不学课程号为C2的学生姓名与年龄。 7.检索学习全部课程的学生姓名。 8.检索所学课程包含学生S3所学课程的学生学号。29Select snum,grade From sc Where cnum=c2;30Select snum,sname From s Wher

13、e snum in(select snumfrom scwhere cnum=c2);select snum,sname from s where snum in(select snumfrom scwhere cnum in(select cnumfrom cwhere cname=Maths);31Select snum From sc Where cnum=c2 or cnum=c4;Select distinct snum From sc Where snum in(select snumfrom scwhere cnum=c2) and snum in(select snumfrom

14、 scwhere cnum=c4);32select sname,age from s where snum not in(select snumfrom scwhere cnum=c2);33select sname,age from s where snum in (select snumfrom scwhere cnum=80 and avg(grade)=90;37设某商业集团数据库有3个实体集。一是“商品”实体集,属性 有商品号、商品名、规格、单价等;二是“商店”实体集,属性有商 品号、商店名、地址等;三是“供应商”实体集,属性有供应商编号 、供应商名、地址等。供应商与商品之间存在“

15、供应”联系,每个供应商可供应多种商 品每种商品可向多个供应商订购,每个供应商应供应每种商品有个月 供应量;商店与商品间存在“销售”联系,每个商店可销售多种商品 ,每种商品可在多个商店销售,每个商店销售每种商品有月计划数。(1)试画出ER图,并在图上注明属性、联系的类型。(2)将ER图转换成关系模式集,并指出每个关系模式的主键和外键 。38设有关系模式: S(snum,sname,age,sex) SC(snum,cnum,grade) C(cnum,cname,teacher) 试用关系代数表达式和SQL语言表达下列查询语句: u求解所有同学都选修的课程名。 v求解至少选修了两门课程的学生名单。 w求解王焱同学未选修的课程名。 x求既没有选修“数据库”又没选修“计算机应用基础”的学 生名单。39CREATE PROCedure procedure_name ; number parameter data_type = default OUTPUT ,nAS sql_statement s procedure_name:给出存储过程名; s number:用于对同名的存储过程进行分组的整数; s parameter:给出参数名; s data_type:指出参数的数据类型; s = default:给出参数的默认值; s OUTPUT(或OUT):表示该参数为输出参

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号