问答题(2002年复旦大学

设教学数据库中有三个表:

学生表  S(S#,SNAME,AGE,SEX)

选课表  SC(S#,C#,GRADE)

课程表  C(C#,CNAME,TEACHER)

现有一个查询语句:检索所学课程包含LIU老师所授课程的学生的学号和姓名。(这里包含是集合中“包含”的意思)

(1) 试写出这个查询语句的关系代数表达式。

(2) 试写出SQL的SELECT语句表达式。

答案解析

暂无答案

讨论

数据库语言设有STUDENT、COURSE、SC三个关系(模式及其记录)如下所列:字段注释:SNO:学号;CNO:课程号;GRADE:成绩;SNAME:姓名;SEX:性别;BDATE:出生日期;HEIGHT:身高;CNAME:课程名;LHOUR:学时数;CREDIT:学分;SEMESTER:开课季节。而在CNO字段内容中:CS-代表计算机系的课程;EE-代表电机系的课程。STUDENT(学生)CUORSE(课程)SC(选课)(1)给出“查询每位学生所选课程的门数和他的平均成绩”(要求列出学生姓名)的SQL语句。(2)若希望用户 DAVID仅有对SC表中电机系学生的课程号CNO(EE开头)和成绩 GRADE二字段的查看和修改权,DBA如何能办到这一点。请给出相应的SQL语句。(3)请为关系SC,在SN0和CNO两属性上建立一个名为SCNO的聚簇索引( CLUSTER),要求SNO按升序、CNO按降序排列,给出相应的SQL语句。(4)设 COURSE关系已定义好,若希望增加完整性约束条件“SEMESTER属性只能取春、秋两值”,请给出能完成该约束条件修改的SL语句。

设有下列四个关系模式:S(SNO,SNAME,CITY)、P(PNO,PNAME,COLOR,WEIGHT)、J(JNO,JNAME,CITY)、SPJ(SNO,PNO,JNO,QTY),其中供应商表S由供应商编号、供应商名称、供应商所在城市组成,对应数据表内容如下:零件表P由零件号、零件名称、零件颜色、零件重量组成,记录各种零件的情况,对应数据表内容如下:工程项目表J由项目号、项目名、项目所在城市组成,记录各个工程项目的情况,对应数据表内容如下:供应情况表SPJ由供应商编号、零件号、项目号、供应数量组成,对应数据表内容如下:分别完成下列操作1)统计每种零件的供应总量;2)求来自重庆的供应商供应的零件总数;3)将S1供应给J1的零件P1改为由P2供给;4)删除全部蓝色零件及相应的SPJ记录;5)在S表中插入一条供应商信息:(S7,华为,深圳)。

设有下列四个关系模式:S(SNO,SNAME,CITY)、P(PNO,PNAME,COLOR,WEIGHT)、J(JNO,JNAME,CITY)、SPJ(SNO,PNO,JNO,QTY),其中供应商表S由供应商编号、供应商名称、供应商所在城市组成,对应数据表内容如下:零件表P由零件号、零件名称、零件颜色、零件重量组成,记录各种零件的情况,对应数据表内容如下:工程项目表J由项目号、项目名、项目所在城市组成,记录各个工程项目的情况,对应数据表内容如下:供应情况表SPJ由供应商编号、零件号、项目号、供应数量组成,对应数据表内容如下:分别完成下列操作:1)将S2供应给J1的零件P5改为由S3供给;2)求来自天津的供应商供应的零件总数;3) 统计每种零件的供应总量;4)删除全部红色零件及相应的SPJ记录;5)在P表中插入一条零件信息:(P7,凸轮,红,40)。

某教学管理数据库中,学生、课程关系模式分别为:S(学号,姓名,性别,家庭住址,电话),关系S 的主键为学号;C(课程号,课程名,学分),关系 C 的主键为课程号。假设一个学生可以选择多门课程,一门课程可以由多个学生选择;一旦学生选择某门课程必定有该课程的成绩。由于学生与课程之间的“选课”联系类型为__(1)__,所以对该联系___(2)__.查询“软件工程”课程的平均成绩、最高成绩与最低成绩之间差值的 SOL 语句如下:SELECT AVG(成绩) AS 平均成绩,__(3)__FROM C,SCWHERE C.课程名=!软件工程’AND c.课程号=sC.课程号(1)A.n:m B.1:n c.n:1 D.1:1 (2)A.不需要构建一个独立的关系模式B.需要构建一个独立的关系模式,且关系模式为:SC(课程号,成绩)C.需要构建一个独立的关系模式,且关系模式为:SC(学生号,成绩)D.需要构建一个独立的关系模式,且关系模式为:SC(学生号,课程号,成绩)(3)A.差值 AS MAX(成绩)-MIN(成绩) B.MAX(成绩)-MIN(成绩) AS 差值C.差值 IN MAX(成绩)-MIN(成绩) D.MAX(成绩)-MIN(成绩) IN 差值

设有一个关系emp- sales(部门号,部门名,商品编号,销售数),查询各部门至少销售了5种商品或者部门总销售数大于2000的部门号、部门名及平均销售数的SQL语句如下:SELECT 部门号,部门名,AVG(销售数) AS 平均销售数FROM emp-salesGROUP BY __(1)__HAVING __(2)__ OR __(3)__;(1)A.部门号 B.部门名 C.商品编号 D.销售数(2)A. COUNT(商品编号)>5 B. COUNT(商品编号)>=5C. COUNT( DISTINCT部门号)=5 D. COUNT(DISTINCT部门号>5(3)A.SUM(销售数)>2000 B.SUM(销售数)>=2000C.SUM(销售数)>2000 D.SUM(销售数)≥=2000

设教学数据库中有三个表:学生表 S(S#,SNAME,AGE,SEX)选课表 SC(S#,C#,GRADE)课程表 C(C#,CNAME,TEACHER)现有一个查询语句:检索不选修WU老师课程的学生的学号和姓名。(1) 试写出这个查询语句的关系代数表达式。(2) 试写出SQL的SELECT语句表达式。

在SQL中的 SELECT语中,试说出在下列四种情况的 SELECT子句的语义:(1) SELECT语句中未使用分组子句,未使用聚合操作(指 COUNT,SUM等函数);(2) SELECT语句中使用了分组子句,但未使用聚合操作;(3) SELECT语句中未使用分组子句,但使用了聚合操作;(4) SELECT话句中使用了分组子句,并且使用了聚合操作。

设有一个员工关系EMP(员工号,姓名,部门名,职位薪资),若需查询不同部门中担任“项目主管”的员工的平均薪资,则相应的 SELECT语句为:SELECT 部门名,AVG(薪资)AS平均薪资FROM EMPGROUP BY ______HAVING ______

设教学数据库中有三个表:学生表 S(S#,SNAME,AGE,SEX)选课表 SC(S#,C#,GRADE)课程表 C(C#,CNAME,TEACHER)现有一个查询语句:检索不选修WU老师课程的学生的学号和姓名。(1) 试写出这个查询语句的关系代数表达式。(2) 试写出SQL的SELECT语句表达式。

“数据独立性”在文件系统阶段、数据库阶段和分布式数据库阶段中各表现为什么形式?

请简述关系数据库中视图概念,并说明视图的主要作用。

嵌入式SQL什么情况下需要使用游标( CURSOR)?简述游标使用的步骤?

重庆大学视图

重庆大学SQL概述

SQL语言有什么特点?

下述SQ语句语法是正确的(其中tem和sp为表名):insert into temp(pno) as select pno from sp

设有一个员工关系EMP(员工号,姓名,部门名,职位薪资),将员工号为“10058”姓名为“黄晓华”、部门名为“开发部”的元组插入EMP关系中的SQL语句为【 】

设教学数据库中有三个表:学生表 S(S#,SNAME,AGE,SEX)选课表 SC(S#,C#,GRADE)课程表 C(C#,CNAME,TEACHER)写一个断言,要求在数据库中不允许女同学选修WU老师的课程。

某数据库系统中,假设有部门关系Dept(部门号,部门名,负责人,电话),其中,“部门号”是该关系的主键;员工关系Emp(员工号,姓名,部门,家庭住址),属性“家庭住址”包含省、市、街道以及门牌号,该属性是一个__(1)__属性。创建Emp关系的SQL语句如下:CREATE TABLE Emp(员工号CHAR(4)__(2)__姓名CHAR(10),部门CHAR(4),家庭住址CHAR(30)__(3)__);为在员工关系Emp中增加一个“工资”字段,其数据类型为数字型并保留2位小数,可采用的SQL语句为__(4)__。(1)A.简单 B.复合 C.多值 D.派生(2)A. PRIMARY KEYB. NULLC. FOREIGN KEYD. NOT NULL(3) A. PRIMARY KEY NOT NULLB. PRIMARY KEY UNIQUEC. FOREIGN KEY REFERENCES Dept(部门名)D. FOREIGN KEY REFERENCES Dept(部门号)(4)A. ALTER TABLE Emp ADD 工资 CHAR(6,2);B. UPDATA TABLE Emp ADD 工资 NUMERIC(6,2);C. ALTER TABLE Emp ADD 工资 NUMERIC(6,2);D. ALTER TABLE Emp MODIFY 工资 NUMERIC(6,2);

设教学数据库中有三个表:学生表 S(S#,SNAME,AGE,SEX)选课表 SC(S#,C#,GRADE)课程表 C(C#,CNAME,TEACHER)写一个断言,要求每个男同学最多选课20门。断言形式如下:CREATE ASSERTION <断言名> CHECK(<条件>)