A仅Student表
B仅Student和SC表
C仅Student和Course表
DStudent、SC和Course表
第1题:
设教学数据库中有三个基本表:
学生表 S(SNO,SNAME,AGE,SEX)
选课表 SC(SNO,CNO,GRADE)
课程表 C(CNO,CNAME,TEACHER)
写出“不学C6课程的男学生的学号和姓名(SNO,SNAME)”关系代数表达式。
答案:πSNO,SNAME(σSEX='男'(S)∞(πSNO(SC)- πSNO(σCNO='C6'(SC))))
第2题:
关系模式Student(Sno,Sname,Cno,Cname,Grade,Tname,Taddr)的属性分别表示学号,学生姓名,课程号,课程名,成绩,任课教师名和教师地址。其中一个学生可以选若干门课,一个教师可以讲授若干门课,一门课程可以由多个教师讲授,对于同一门课程,学生只能选定一个教师讲授一门课,教师不会重名。下列对关系的分解正确的并且是无损连接及保持函数依赖的是______。
A.{(Sno,Sname,Cno,Tname,Taddr),(Sno,Sname,Cno,Cname,Grade))属于2NF
B.{(Sno,Sname),(Sno,Cno,Grade Tname,Taddr),(Cno,Cname)}属于2NF
C.{(Sno,Sname),(Sno,Cno,Grade),(Tname,Taddr),(Cno,Cname)}属于3NF
D.{(Sno,Sname),(Sno,Cno,Grade),(Tname,Taddr),(Tname,Cno),(Cno,Cname)}属于3NF
第3题:
设有关系S(SNO,SNAME,SEX),C(CNO,CNAME),SC(SNO,CNO,GRADE)。其中SNO为学生号,SNAME为学生姓名,SEX为性别,CN0为课程号,CNAME为课程名。要查询选修”计算机\"课的全体女学生姓名的SQL语句是SELECT SNAME FROM S,C,SC WHERE子句。这里WHERE子句的内容是( )。
A.S.SNO=SC.SNO and SEX='女'and CNAME='计算机'
B.S.SNO=SC.SNO and C.CNO=SC.CNO and CNAME='计算机'
C.SEX='女' and CNAME='计算机'
D.S.SNO=SC.SNO and C.CNO=SC.CNO and SEX='女' and CNAME='计算机'
本题涉及三个表的连接查询,需要求的是WHERE后面的连接条件,首先连接S与SC表,连接条件为S.SNO=SC.SNO;然后再连接C表和SC表,连接条件为C.CNO=SC.CNO。这样就可以将三个表连接起来,但是分析题意,同时还要在连接后所形成的表中满足SEX='女'和CNAME='计算机'。通过以上分析,连接是同时满足的关系,故应用'AND'连接。因此,WHERE子句内容应为:S.SNO=SC.SNO and C.CNO:SC.CNO and SEX='女'and CNAME='计算机'。
第4题:
数据库中有三个关系:S(SNO,SNAME,AGE,SEX)SC(SNO,CNO,GRADE)C(CNO,CNAME,TEACHER)查询语句“查询学习全部课程的学生姓名”可用____关系代数表达式表达
A、ΠSNAME(S⋈SC⋈C)
B、ΠSNAME(C⋈(ΠSNO,CNO(SC)÷ΠSNO(S)))
C、ΠSNAME(S⋈(ΠSNO,CNO(SC)÷ΠCNO(C)))
D、以上均不是
第5题:
关系模式Student(sno,Sname,Cno,Cname,Grade,Tname,Taddr)的属性分别表示学号、学生姓名、课程号、课程名、成绩、任课教师名和教师地址。其中,一个学生可以选若干门课程,一个教师可以讲授若干门课程,一门课程可以由多个教师讲授,对于同一门课程,学生只能选定一个教师讲授的课程,教师不会重名。下列有关关系模式Student的分解中,是无损联接并保持函数依赖的是——。
A.{(Sno,Sname,Cno,rname,raddr),(sno,Sname,Cno,Cnarne,Grade)}E:INF
B.{(Sno,Sname),(sn0,Cno,Grade,Tname,。Taddr),(Cno,Cname)∈2NF
C.{(Sno,Sname),(sno,Cno,Grade),(rI'name,Taddr),(Cno,Cname,)∈3NF
D.{(Sno,Sname),(Sno,Cno,Grade),(Tname,Taddr),(Tname,Cno),(Cno,Cname)}∈BCNF
第6题:
第( 36 ) - ( 37 )题基于学生一选课一课程数据库中的三个基本表:
学生信息表: STUDENT ( sno, sname, sex, age, dept ) 主码为 sno
课程信息表: CDLIRSB ( cno, cname, teacher ) 主码为 cno
学生选课信息表: SC ( sno, cno, grade ) 主码为( sno, cno )
( 36 )“ 查询没有学习成绩的学生的学号和课程号 ” 的 SQL 语句是
A ) SELECT snc, cno FROM SC WHERE grade=NULL
B ) SELECT sno, cno FROM SC WHERE grade IS' '
C ) SELECT sno. cno FROM SC WHERE grade IS NULL
D ) SELECT sno. cno FROM SC WHERE grade =' '
第7题:
对于教学数据库的三个基本表:S(Sno,Sname,Ssex),SC(Sno,Cno,Grade),C(Cno,Cname, Teacher),其中S为学生表,SC为学生选课表,C为课程表,则对于语句:检索至少选修LIU老师所授课课程中一门课程的女生姓名,SQL语句错误的是______。
A.SELECT Sname FROM S,SC,C WHERE S.Sno=SC.Sno AND SC.Cno=C.Cno AND Teacher=‘LIU’AND Ssex=‘F’
B.SELECT Sname FROM S WHERE Ssex=‘F’AND Sno IN (SELECT Sno FROM SC WHERE Cno IN(SELECT Cno FROM C WHERE Teacher=‘LIU’))
C.SELECT Sname FROM S WHERE Ssex=‘F’AND EXISTS (SELECT* FROM SC WHERE SC.Sno=S.Sno AND EXISTS (SELECT*
D.SELECT Sname FROM S WHERE Ssex=‘F’AND EXISTS(SELECT* FROM SC WHERE SC.Sno=S.Sno AND EXISTS (SELECT*
第8题:
(40)查找学生姓名及其所选修课程号和成绩,正确的 SQL 语句是
A)SELECT sname FROM student, SELECT cno,grade FROM sc WHERE student.sno =sc.sno
B) FROM sname,cno,grade FROM student,course WHERE student.sno =course.cno
C) SELECT sname ,canme,grade FROM student,course,sc WHERE student.sno =sc.sno and sc.c
no=course.cno
D) SELECT sname ,cno,grade FROM student,sc WHERE student.sno =sc.sno
第9题:
已知学生选课信息表:sc(sno,cno,grade)。查询“至少选修了一门课程,但没有学习成绩的学生学号和课程号”的SQL语句是
A.SELECT sno,cno FROM sc WHERE grade=NULL
B.SELECT sno,cno FROM sc WHERE grade IS‘’
C.SELECT sno,cno FROM sc WHERE grade IS NULL
D.SELECT sno,cno FROM sc WHERE grade=‘’
第10题:
用SQL语句创建简单数据表
设教学管理数据库中有多张数据表,其中学生表Student包括学生编号Sno,学生姓名
Sname,学生年龄Sage,学生性别Ssex字段;Sno和Sname为字符型(长度20), Sage为整型,
Ssex为位型。Sno是主键。
课程表Course包括课程编号Cno,课程名Cname,授课教师Teacher字段;三个字段均为
字符型(长度20) , Cno是主键。
请用SQL语句创建上面的两张数据表。