FROM SHOP A,SALE B,GOODS C
WHERE A.S#=B.S# AND B.G#=C.G# AND GNAME='冰箱';
(2)SQL 语句:DELETE FROM SALE WHERE S# IN(SELECT S# FROM SHOP WHERE SNAME='开开商店
') (SELECT G# AND G# IN
FROM GOODS
WHERE PRICE>1000);
16、 设数据库中有两个基本表:
职工表 EMP(E#,ENAME,AGE,SALARY,D#),
其属性分别表示职工工号、姓名、年龄、工资和工作部门的编号。 部
门表 DEPT(D#,DNAME,MGR#),
其属性分别表示部门编号、部门名称和部门经理的职工工号。
(1)写出下列查询的关系代数表达式和 SQL 语句: 检索每个部门经理的工资,
要求显示其部门编号、部门名称、经理工号、经 理姓名和经理工资;(3 分) (2)写出 SQL 语句:建一个年龄大于 50 岁的职工视图(视图名:VIEW50),属
性为(D#,DNAME,E#,ENAME,AGE,SALARY)。
参考答案:
(1)关系表达式为:πDEPT.D#,DNAME,MGR#,ENAME,SALARY(DEPT ? EMP)
MGR#=E#
SQL 语句为:
SELECT DEPT.D#,DNAME,MGR#,ENAME,SALARY FROM DEPT,EMP WHERE MGR#=E#; (2)CREATE VIEW VIEW50
AS SELECT DEPT.D#,DNAME,E#,ENAME,AGE, SALARY
FROM DEPT,EMP WHERE DEPT.D#=EMP.D# AND AGE>50;
17、 现有关系数据库如下: 学生(学号,姓名,性别,专业,奖学金) 课程(课程号,名称,学分) 学习(学号,课程号,分数) 用关系代数表达式实现下列操作: (1) 检索“机制”专业中获得奖学金的学生信息,包括学号、姓名、课程名和 分数; (2) 检索学生成绩得过满分(100 分)课程的课程号、名称和学分;
(3) 检索没有获得奖学金、同时至少有一门课程成绩在 95 上的学生信息,包 括学号、姓名和专业;
(4) 检索没有任何一门课程成绩在 80 下的学生信息,包括学号、姓名、课程 名和分数。
参考答案:
(1)П 学号,姓名,课程名,分数(σ 奖学金>0/\\专业='机制'(学生∞学习∞课程)) (2)П 课程号,名称,学分(σ 分数=100 (学生∞学习∞课程)) (3)П 学号,姓名,专业(σ 奖学金<=0/\\分数>95(学生∞学习))
(4)П 学号,姓名,专业(学生)-П 学号,姓名,专业(σ 分数<80(学生∞学习)) (错 1 扣 1 分)
18、 针对上题中的关系数据库,用 SQL 语言实现下列操作:
(1) 对成绩得过满分的学生,如果没有获得奖学金的,将其奖学金设为 1000 元;
(2) 检索至少学过课程号为 C111 和C255 的学生信息,包括学号,姓名和专 业; (3) 从学生表中删除成绩出现过 0 分的所有学生信息; (4) 定义汽车专业学生所学课程的信息视图 CAR,包括学号、姓名、课程号 和分数。
参考答案:
(1)UPDATE 学生
SET 奖学金=1000
WHERE 奖学金<=0AND 学号 IN(SELECT 学号 FROM 学习
WHERE 分数=100) (2)SELECT 学号,姓名,专业 FROM 学生
WHERE 学号 IN (SELECT X. 学号
FROM 学习 AS X, 学习 AS Y
WHERE X.学号=Y.学号 AND X.课程号='C111' AND Y 课程号=?C255?)
(3)DELETE FROM 学生 WHERE 学号 IN (SELECT 学号
FROM 学习
WHERE 分数=0)
(4)CREATE VIEW Computer(学号,姓名,课程号,分数) AS SELECT 学号,姓名,课程号,分数 FROM 学生,学习
WHERE 学生.学号 =学习.学号 AND 专业=?汽车?
19、 有一职工,原内容如下表。写出 SQL 命令,使职务级别为“2”的职工的基本工 资
设置为 600.00。
参考答案: UPDATE 职工
SET 基本工资=600.00 WHERE 职务级别=?2?;
SELECT * FROM 职工; COMMIT 职工;
五、 设计题
1、设某连锁企业数据库中有三个实体集。一是“仓库”实体集,属性有仓库号、仓 库名和地址等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“商 品”实体集,属性有商品号、商品名、单价。
设仓库与商品之间存在“库存”联系,每个仓库可存储若干种商品,每种商品 存储在若干仓库中,每个仓库每存储一种商品有个日期及存储量;商店与商品之间 存在着“销售”联系,每个商店可销售若干种商品,每种商品可在若干商店里销售, 每个商店销售一种商品有月份和月销售量两个属性;仓库、商店、商品之间存在着 “供应”联系,有月份和月供应量两个属性。 (1)试画出 ER 图,并在图上注明属性、联系类型等; (2)将 ER 图转换成关系模型; (3)说明转换结果中主键和外键。
参考答案:
(1)ER 图如图所示。
仓库号 仓库名 地址 M 库存 仓库 M 供应 月份 月供应量 日期
库存量 N 商品 N M 单价 月份 销售 P N 商店号 商店
商品号
商品名 商店名 地址 月销售量
(2)据转换规则,图 2 的 ER 图可转换成 6 个关系模式: 仓库(仓库号,仓库名,地址) 商品(商品号,商品名,单价) 商店(商店号,商店名,地址) 库存(仓库号,商品号,日期,库存量) 销售(商店号,商品号,月份,月销售量) 供应(仓库号,商店号,商品号,月份,月供应量)
(3)关系模式中的主键如图所示
相关推荐: