有关系表学生(学号,姓名,系,班级号)和班级(班级号,专业,教室号,班主任,班长)。其中学生关系中的班
有关系表学生(学号,姓名,系,班级号)和班级(班级号,专业,教室号,班主任,班长)。其中学生关系中的班级号可以为NULL,为NULL表示还未分班的学生。现执行查询语句:SELECT COUNT(DISTINCT、班级号)FROM学生,其结果是______。
A.学生总人数
B.每一个班的学生人数
C.班级数
D.已分班学生的人数
有关系表学生(学号,姓名,系,班级号)和班级(班级号,专业,教室号,班主任,班长)。其中学生关系中的班级号可以为NULL,为NULL表示还未分班的学生。现执行查询语句:SELECT COUNT(DISTINCT、班级号)FROM学生,其结果是______。
A.学生总人数
B.每一个班的学生人数
C.班级数
D.已分班学生的人数
有一一个学生选课的关系,其中学生的关系模式为:学生(学号,姓名,班级,年龄),课程的关系模式为:课程(课号,课程名,学时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:选课(学号,【 】,成绩)。
,课程名,课程号,成绩),关键字为(学号,课程号)。
成绩(1)依赖(学号,课程)。
姓名(2)依赖(学号,课程)。
系主任(3)依赖学号。
A.部分
B.完全
C.传递
依次填入的选项是:()。
A.B,A,C
B.A,B,C
C.B,C,A
D.A,C,B
有两个基本关系:学生(学号,姓名,系号),系(系号,系名,系主任),学生表的主码为学号,系表的主码为系号,因此系号是学生表的()。
A.主码(主键)
B.外码(外关键字)
C.域
D.映像
在SQLServer2000的某数据库中有如下两张关系表:
学生表(学号,姓名,性别,系号),学号为主码
系表(系号,系名,系简称),系号为主码
①在数据库中执行如下T-SQL代码:
DECLARE @DePtID varchar(10)
DECLARE @cnt int
set @cnt=O
DECLARE cursor1 cursor FOR SELEET系号FROM系表
WHERE系名LIKE'%电%'
OPEN cursorl
FETCH NEXT FROM cursor1 INTO @DePtID
WHILE @@FETCH_STATUS=O
BEGIN
DECLARE @temp_cnt int
sELECT @temp_cnt=COUNT(*)FROM学生表WHERE系号=@DeptID
set @Cnt=@cnt+@temp_cnt
FETCH NEXT FROM cursor1 INTO ODePtID
END
CLOSE cursor1
DEALLOCATE cursor1
SELECT @cnt
执行过程中发现速度比较慢,为了解决性能问题,需在功能不变的情况下,将此T-SQL代码改为一条SQL语句,请写出此SQL语句(语句中不能含有子查询)并说明为什么此种修改可以提高性能。
②设在学生表的(姓名,系号)列上建有一个复合索引,该索引是否有助于提高下列两个语句的查询效率?并说明原因。
SELECT*FROM学生表 WHERE系号=‘1’;
SELEET*FRoM学生表WHERE姓名=‘张三’;
A.学生关系的“学号”
B.班级关系的“班级号”
C.学生关系的“班级号”
D.班级关系的“班级名”
已知学生关系(学号,姓名,性别,课程号,成绩,所在系号)有下列函数依赖
Ⅰ.(学号,课程号)→课程号
Ⅱ.(学号,课程号)→成绩
Ⅲ.(学号,课程号)→所在系号
Ⅳ.(学号,课程号)→姓名,性别
Ⅵ.(学号,课程号)→学号
以上函数依赖属于非平凡函数依赖的是______。
A) 仅Ⅰ和Ⅴ
B) 仅Ⅱ和Ⅴ
C) 仅Ⅲ和Ⅳ
D) 仅Ⅱ、Ⅲ和Ⅳ
A.学生关系的“学号”
B.班级关系的“班级号”
C.学生关系的“班级号”
D.班级关系的“班级名”