搜题
问题   更新时间2023/4/3 12:59:00

33. (问答题) 设有一个关系数据库,有三个基本表,表的结构如下:
STUDENT(学号,姓名,年龄,性别,系名),其中学号,姓名,性别,系名的数据类型均为字符类型。年龄的数据类型为整型。

SC(学号,课程号,成绩):其中学号、课程号的数据类型为字符类型,成绩的数据类型为整型。

COURSE(课程号,课程名,学时数):其中课程号、课程名的数据类型的数据类型为字符类型;学时数的数据类型为整型。

1)请用关系代数查询信息系学生的学号、姓名、课程号和成绩。

2)指出以上各关系的键和外键。

3) 请用关系代数查询年龄在20以下同学的姓名,年龄。

4) 请用SQL语言检索创建STUDENT表,并定义出主键约束,学生性别缺省约束为:“男”

5 ) 请用SQL语言定义SC表,并定义外键约束

SC(学号,课程号,成绩):其中学号、课程号的数据类型为字符类型,成绩的数据类型为整型。

6) 查询“计算机原理”课程成绩小于60分的同学的学号和姓名。

7) 请创建年龄在20岁以下,计算机系男同学的视图。

8)将新同学,学号“200301009”,姓名:张苹,年龄:20,性别:女,系名:土木的信息插入到STUDENT关系中。

9) 删除选修“001”课程的选修信息。

(本题10.0分)

标准答案: 1)π学号,姓名,课程号,成绩 (SC (σ系名=‘信息’STUDENT)) 2)STUDENT:键:学号 SC:键:学号,课程号;外键:学号;课程号。 COURSE:键:课程号 3)π姓名,年龄 (σAGE《20 STUDENT) 4)CREATE TABLE STUDENT ( 学号 Char(8) PRIMARYKEY, 姓名 Varchar(10) NOT NULL, 年龄 integer NOT NULL, 性别 Char(2) Not null DEFAULT“男”, 系名 Varchar(20) NOT NULL) 5)CREATE TABLE SC (学号 Char(8), 课程号 Char(8), 成绩 integer, CONSTRAINT pk_sc_constr PRIMARY KEY NONCLUSTERED (学号,课程号), CONSTRAINT pub_sno_const REFERENCES STUDENT (学号) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT pub_cno_const REFERENCES course (课程号) ON DELETE CASCADE ON UPDATE CASCADE) 6)SELECT 学号,姓名 FROM STUDENT,SC WHERE STUDENT.学号=SC.学号 AND SC.课程号=COURSE.课程号 AND 课程名=“计算机原理” AND 成绩〈60 7)CREATE VIEW 男同学 AS SELECT * FROM STUDENT WHERE 年龄〈20 AND 系名=“计算机” 8) INSERT INTO STUDENT VALUES(“ 200301009”,“张苹”,20,“女”,“土木”) 9)DELETE FROM SC WHERE 课程号=“001”
王老师:19139051760(拨打)