在实体关系模型中,有关系R(学号,姓名)和关系S(学号,课程名,

题目

在实体关系模型中,有关系R(学号,姓名)和关系S(学号,课程名,课程成绩),要得到关系Q(学号,姓名,课程名,课程成绩),应该使用的关系运算是()

  • A、联接
  • B、选择
  • C、投影
  • D、自然联接
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

已知学生关系S(学号、姓名、班级、课程名称、成绩),学号由入学年份、系别、专业编号和班内编号组成。则其侯选关键字是( )。

A.(学号、姓名)

B.(学号、课程名称)

C.(姓名、成绩)

D.(学号、班级)


正确答案:B

第2题:

设数据库中有四个关系

课程关系C(C,CNAME,TNAME)

学生关系S(S,SNAME,AGE,SEX)

选课关系SC(S,C,SCORE)

其中课程关系中各属性分别表示为课程号,课程名,以及相应的课程任课老师名;学生关系中各属性分别为学号,学生姓名,年龄以及性别;用SQL语句完成下面的各个问题:

①创建学生关系S,其中S为主码,SEX只能取F和M两个值,其他的属性不为空

②检索年龄小于17岁的女生的学号和姓名

③检索WANG同学不学的课程的课程


正确答案:①使用CREATE建立表使用CHECK短语来指定列值应该满足的条件。 CREATE TABLE SC (S#char(10) PRIMARY KEY SNAME char(20) NOT NULL AGE int NOT NULL SEX char(2) check(SEX in('F''M') ); ② SELECT S#SNAME FROM S WHERE AGE17 AND SEX='F'; ③ SELECT C#
①使用CREATE建立表,使用CHECK短语来指定列值应该满足的条件。 CREATE TABLE SC (S#char(10) PRIMARY KEY, SNAME char(20) NOT NULL, AGE int NOT NULL, SEX char(2) check(SEX in('F','M') ); ② SELECT S#,SNAME FROM S WHERE AGE17 AND SEX='F'; ③ SELECT C#

第3题:

( 5 )有一个学生选课的关系,其中学生的关系模式为:学生(学号 , 姓名 , 班级 , 年龄 ) ,课程的关系模式为:课程(课号 , 课程名 , 学时 ) ,其中两个关系模式的键分别是学号和课号 , 则关系模式选课可定义为:选课(学号 , 【 5 】 , 成绩 ) 。


正确答案:

第4题:

现有表:s(学号,姓名,性别,年龄),c(课程号,课程名,学分),SC(学号,课程号,成绩)。检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL命令是( )。

A. SELECT学号,姓名,课程名,成绩FROM S,SC,C; WHERE S.学号=SC.学号AND SC.课程号=C.课程号

B. SELECT学号,姓名,课程名,成绩; FROM(S JOIN SC ON S.学号=SC.学号)JOIN C ON SC.课程号=C.课程号

C. SELECT S.学号,姓名,课程名,成绩; FROM S JOIN SC JOIN C ON S.学号=SC.学号ON SC.课程号=C.课程号

D. SELECT S.学号,姓名,课程名,成绩; FROM S JOIN SC JOIN C ON SC.课程号=C.课程号0N S.学号=SC.学号


正确答案:D
用JOIN连接格式连接多个表时JOIN的顺序和ON的顺序应该是相反的,否则会影响到最终的查询结果。

第5题:

设有如图所示的E-R模型:

将上述E-R模型转换成关系模式,正确的结果应是

A.成绩(学号,姓名,年龄,性别,课程号,课程名,学时,分数)

B.学生(学号,姓名,年龄,性别,分数)、课程(课程号,课程名,学时)

C.学生(学号,姓名,年龄,性别)、课程(课程号,课程名,学时,分数)

D.学生(学号,姓名,年龄,性别)、课程(课程号,课程名,学时)、成绩(学号,课程号,分数)


正确答案:D
解析:本题考查E-R模型转换成关系模式的过程。E-R模型可以向现有的多种数据库模型转换,对不同的数据库模型有不同的转换规则。向关系模型转换的规则是:一个实体类型转换成一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的关系则有:一个1:1联系可以转换为一个独立的关系模型;一个1:n的联系可以转换为一个独立的关系模型,也可以与联系的任意n端实体所对应的关系模式合并;一个m: n的联系转换为一个关系模式。题目给出的E-R模型包含两个实体:学生和课程,包含一个m: n的联系,应该转换为一个关系模式。正确答案为选项D。

第6题:

查找每个学生的学号、姓名、选修的课程名和成绩,将使用关系( )。

A)只有SC,C

B)只有S,SC

C)只有S,C

D)S,SC,C


正确答案:D
从S表中选取出每个学生的学号和姓名,通过SC表和C表选取出课程名和成绩,这两个表通过C#进行连接,因此这个关系需要用这三张表。

第7题:

在关系Student(学号,姓名,系名,课程号,成绩)中,查询至少选修了四门课程的学生学号、姓名及平均成绩的SElECT语句应该是:

SELECT学号,姓名,AVC((254))AS平均成绩

FROM Student

CROUP BY学号

HAVING (255)

A.成绩

B.姓名

C.系名

D.课程号


正确答案:A

第8题:

设有学生表S(学号,姓名,性别,年龄)、课程表C(课程号,课程名,学分)和学生选课表SC(学号,课程号,成绩),检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL命令是______。

A.SELECT 学号,姓名,课程名,成绩 FROM S,SC,C WHERE S.学号=SC.学号 AND SC.学号=C.学号

B.SELECT 学号,姓名,课程名,成绩 FROM(S JOIN SC ON S.学号=SC.学号) JOIN C ON SC.课程号=C.课程号

C.SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON S.学号=SC.学号 ON SC.课程号=C.课程号

D.SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON SC.课程号=C.课程号 ON S.学号=SC.学号


正确答案:D
解析:此题是一个联接查询,联接查询是一种基于多个关系的查询。在SQL查询语句中建立两表间的连接可使用JOIN关键字连接其左右两个表名>所指的表,JOIN为普通连接,在Visual FoxPro中称为内部连接,即只有满足连接条件的记录才出现在查询结果中。用ON子句指定连接条件:也可以一次性在WHERE子句中指定连接条件和筛选条件。格式如下:
  SELECT 目标列表达式>
  FROM[[表名1>|视图名1>][[INNE]
  JOIN 表名2>|视图名1>]...ON连接条件>]...
  FROM[[数据库名>]owner>{表名>|视图名>}
  [,[[数据库名>.]owner>{表名>|视图名>}...
  [WHERE条件表达式>]
  [GROUP BY列名1>
  [HAVING内部函数表达式>]]
  [ORDER BY列名2> {ASC/DESC}]
所以A、B选项错误,如果先连接学生表S和学生选课表SC,会造成结果中有不符合要求的多余记录,所以C选项错误。

第9题:

设有学生关系S(学号,姓名,班级)和学生选课关系SC(学号,课程号,成绩),为维护数据一致性,SC中的学号应是S中学号的一个有效值,这是指S与SC之间应满足【 】完整性约束。


正确答案:参照 或 引用
参照 或 引用 解析:本题考查参照完整性的概念。参照完整性则是相关联的两个表之间的约束,具体的说,就是从表中每条记录外键的值必须是主表中存在的。因此,如果在两个表之间建立了关联关系,则对一个关系进行的操作要影响到另一个表中的记录。如果在学生表和选修课之间用学号建立关联,学生表是主表,选修课是从表,那么,在向从表中输入一条新记录时,系统要检查新记录的学号是否在主表中已存在,如果存在,则允许执行输入操作,否则拒绝输入,这就是参照完整性。参照完整性还体现在对主表中的删除和修改操作,例如,如果删除主表中的一条记录,则从表中凡是外键的值与主表的主键值相同的记录也会被同时删除,将此称为级联删除;如果修改主表中主关键字的值,则从表中相应记录的外键值也随之被修改,将此称为级联删除。正确答案为参照或引用。

第10题:

给定学生S(学号,姓名,年龄,入学时间,联系方式)和选课SC(学号,课程号,成绩)关系,若要查询选修了1号课程的学生学号、姓名和成绩,则该查询与关系代数表达式 (8) 等价。

A.A

B.B

C.C

D.D


正确答案:B
本题考查数据库中的关系代数。解答本题需要对关系代数中的自然连接有一定了解。自然连接操作会自动以两个关系模式中共有属性值相等作为连接条件,对于连接结果,将自动去除重复的属性。所以在本题中,连接条件为两个表的学号相等,当连接操作完成以后,形成的结果表,有属性“学号,姓名,年龄,入学时间,联系方式,课程号,成绩”,此时要选择1号课程的学生记录,应使用条件6=“1”,其含义是表中的第6个属性值为“1”。所以本题应选B。

更多相关问题