阅读下列说明,回答【问题1】至【问题3】,将答案填入答题纸的对应栏内。
【说明】
某学校的教学管理数据库系统的E-R模型如图9所示,其中作下划线的属性是实体标识符。

【问题1】(7分)
(1)根据图9所示的E-R模型,可得到该教学管理数据库系统的关系模式,如下所示,请写出编号处对应的属性。
学生(①,姓名,性别,年龄)
课程(②,课程名,学分)
选修(③,④,⑤),其中(③,④)是主键
(2)上述的三个关系模式中,有一个关系模式有多个外键,这个关系模式是①,有②个外键。
【问题2】(9分)
参考【问题1】中的三个关系模式,写出能够完成下列题目的SQL语句。
(1)假设学号的前四位代表入学年份,请检索2019年入学的学生的姓名、性别。
(2)检索每个选过课程的学生的学号、姓名、选课的门数。
(3)定义包括学生的姓名、性别的视图vProject。
【问题3】(4分)
事务是数据库系统中执行的一个工作单位,它是由用户定义的一组操作序列。
表5列出了事务的四个特征的名称。表6列出了事务的四个特征的概述,请写出事务特征的名称序号和概述编号的对应关系。

【问题1】(7分)
(1)①学号;②课程号;③学号;④课程号;⑤成绩;
(2)①选修;②两;
【问题2】(9分)
(1)select学生.姓名,学生.性别from学生
where学生.学号like '2019%'
(2)select学生.学号,学生.姓名,count(*) as 选课门数
From学生,选修
Where学生.学号=选修.学号
Group by学生.学号,学生.姓名
(3)create view vProject as
select学生.姓名,学生.性别from 学生
【问题3】(4分)
①、B
②、C
③、D
④、A
【问题1】(7分)
主码(主键):表中的某个属性组,它可以唯一确定一个元祖,在表中的学号,可以唯一确定一个学生,也就成为本关系的主码。
外码(外键):一张表的非主属性是另一个表的主属性就是这个表的外键。
【问题2】(9分)
(1)select学生.姓名,学生.性别from学生
where学生.学号like '2019%' //注意这里只能模糊查询用like,不能用=
(2)select学生.学号,学生.姓名,count(*) as 选课门数
From学生,选修
Where 学生.学号=选修.学号
Group by学生.学号,学生.姓名
(3)create view vProject as
select学生.姓名,学生.性别from 学生
【问题3】(4分)
ACID:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。
原子性:是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。
一致性:是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。比如A账户转账100元到B账户,不管操作成功与否,A和B账户的存款总额是不变的。
隔离性:是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
持久性:一旦事务提交成功后,事务中所有的数据操作都必须被持久化到数据库中。即使在事务提交后,数据库马上崩溃,在数据库重启时,也必须保证能够通过某种机制恢复数据。