最新数据库复习-专升本附答案(EK-绝密版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、题型及分值
1、填空题(10小题,10分)
2、选择题(10小题,20分)
3、问答与分析题(4小题,30分)
4、综合题(2小题,40分)
二、知识要点
(一)关系模型的基本概念
【例1】学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的联系类型是_____________。
【例2】层次模型不能直接表示()。
A.1:1联系 B.1:n联系
C.m:n联系 D.1:1和1:n联系
【例3】在三大传统的数据模型中,具有严格的数学理论基础的是________模型。
【例4】数据库的数据独立性包括逻辑独立性和___________。
(二)关系代数运算
【例1】五种基本关系代数运算是( A )。
A.∪,-,×,π和σ B.∪,-,∞,π和σ
C.∪,∩,×,π和σ D.∪,∩,∞,π和σ
【例2】在关系代数中,除法运算由基本运算符( C )组成。
A、∪,-,π和σ
B、-,∞和π
C、-,×和π
D、∪,∞,π和σ
【例3】设关系R和S,R∩S的运算等价于( B )。
A.S-(R-S) B.R-(R-S)
C.(R-S)∪S D.R∪(R-S)
【例4】在关系代数中,连接运算∞由基本运算符( C )组成。
A、∪,-,π和σ
B、-和π
C、×和σ
D、∪,π和σ
【例5】设关系R和S的属性个数分别为r和s,则(R×S)操作结果的属性个数为_________,元组个数为___________。
【例6】设有如下关系:
关系代数表达式R÷S的运算结果是______________。
【例7】已知有如下三个关系
STUDENT(学号,姓名,性别,年龄,专业)
GRADE (学号,课程号,成绩)
COURSE(课程号,课程名,学分,课时)
现有如下表达式:
π学号,姓名(STUDENT)(π学号,课程号(GRADE) ÷π课程号(COURSE)))。
请用汉语句子写出该表达式表达的查询,并写出与该表达式对应的SQL语句。
答:(1)选修了全部课程的学生的学号和姓名。
(2)select sno,sname
From student
Where not exists
(select *
From course
Where not exists
(select *
From sc
Where sno = student.sno and cno=o))
(三)数据库的完整性
1、关系的三类完整性约束。
2、触发器。
【例1】关系模式的三类完整性约束条件分别是______________、参照完整性约束和用户定义完整性约束。
【例2】在SQL Server中,在视图上可以定义_________类型的触发器。
【例3】试举例说明在视图上创建instead of 触发器能够使得视图具备可更新功能。
答:如果一个视图涉及到计算列,那么该视图为不可更新视图。
/*创建books表*/
create table books
(
bookKey int identity(1,1),
bookName nvarchar(10) not null,
Color nvarchar(10) not null,
ComputedCol as (bookName + Color),
Pages int
)
/*在books表上创建视图,包含基表中所有列*/
create view uv_books
as select bookKey,bookName,Color,ComputedCol,Pages
from books
视图uv_books包含计算列,为不可更新视图。
/*在视图uv_books上创建instead of 触发器*/
create trigger tr_uv_books
on uv_books
instead of insert
as
begin
insert into books
select bookName,Color,Pages from inserted
end
/*往视图uv_books上插入一行代码,完成对基表的插入*/
insert into uv_books(bookKey,bookName,Color,ComputedCol,Pages)
values(4,'数据库原理','黄色','白色',200)
从而验证了视图uv_books为可更新视图。
【例4】已知S(sno,sname,ssex,sdept,sage),SC(sno,sname,cno,grade)。请编写一个触发器,当S表中的sname字段值发生变化时,SC对应的sname字段值也相应改变。
create trigger trgInS
on S
after update
as
begin
if update(sname)
begin
update SC
set sname = (select sname from inserted)
where sno = (select sno from inserted )
end
end
(四)SQL语句
1、数据查询及更新
2、索引
3、视图
4、存储过程、游标
【例1】有职工表EMP和部门表DEPT如图所示,其中有下划线的属性为主键,有波浪线的属性为外键。下面操作不能正确执行的是()
A.检索部门号为“D05”的职工号