填空题
1、DBMS 并发控制的基本单位为___事务_____。
2、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏、这是指数据的 _安全性。
3、DB 并发操作通常会带来三类问题:丢失修改、___不可重复读___和读"脏数据"。
三类经典并发问题是:
- 丢失修改
- 不可重复读
- 读脏数据
你也可以记成:
丢失修改、脏读、不可重复读
4、SQL 的 Grant 和 Revoke 语言主要用来维护数据库的____安全性 (更准确地说是用户权限 / 存取权限)_。
GRANT:授权REVOKE:收权它们属于 SQL 的 DCL(数据控制语言) ,本质上是在维护数据库的用户权限 ,因此教材里通常概括成维护数据库的安全性。
5、在关系代数运算中,五种基本运算为并、差、笛卡尔积、选择、投影。
选择题
1、数据库的独立性是指( )。
A.数据库的数据依赖于用户的应用程序
B.DBMS 与 DB 相互独立
C.用户应用程序与数据库的数据相互独立
D.用户应用程序与 DBMS 相互独立
C.用户应用程序与数据库的数据相互独立
2、数据库的数据完整性为( )
A.数据的正确性
C.数据的一致性 。
B.数据的独立性、可控性
D.数据的正确性、有效性和相容性
D.数据的正确性、有效性和相容性
3、SQL 语言称为( )。
A.结构化定义语言
B.结构化控制语言
C.结构化查询语言
D.结构化操纵语言
C.结构化查询语言
4、关系模式R中的属性全部是主属性,则R的最高范式必定是( )。
A.2NF B.3NF C.BCNF D.4NF
5、登记日志文件时,应该( )。
A.将更新数据库与登记日志文件两个操作同时完成
B.将更新数据库与登记日志文件两个操作按随机的先后顺序完成
C.先登记日志文件,后写数据库的更新
D.先写数据库的更新,后登记日志文件
C.先登记日志文件,后写数据库的更新
简答题
1、简述静态转储、动态转储的含义及优缺点。
静态转储(静态备份) :
指在转储期间不允许对数据库进行任何存取和修改,也就是转储前要结束数据库中的所有事务,再进行备份。你的课件里对应为"冷备份/静态:备份前需要结束所有数据库中的事务"。
优点:
转储时数据库处于稳定一致状态,操作简单,恢复时容易处理。
因为没有事务并发执行,所以不会出现"备份时前后数据不一致"的问题。
缺点:
不能与数据库正常运行并行,会中断数据库服务,影响在线业务,适合停机维护场景。课件中也明确写了"限制较多,影响在线业务"。
动态转储(动态备份) :
指在转储期间允许数据库继续运行和继续进行事务处理,也就是一边备份,一边允许用户访问数据库。课件里对应为"热备份/动态"。
优点:
不用停机,能保证数据库系统对外正常服务,对在线业务影响小。
适合实际生产环境中的连续运行系统。
缺点:
转储过程中数据库内容可能继续变化,因此单独的数据库副本未必对应某一时刻的完全一致状态,恢复时通常要配合日志文件一起使用。你的课件明确写到:动态备份时"在备份数据的同时也备份数据库重做日志"。
静态转储:停库备份,一致性好,但影响运行。
动态转储:不停库备份,业务不中断,但实现和恢复更复杂,要结合日志。
2、 简述数据库日志文件的含义与作用。
含义:
数据库日志文件是数据库系统对各类执行事件的记录文件,它与事务密切相关。事务执行过程中的开始、提交、中止以及对数据的修改,都会记入日志。课件里写得很清楚:数据库日志是数据库系统内一系列执行事件的记录;日志记录不仅包含数据更新,还包含事务开始/结束等逻辑。
作用:
数据库日志文件的核心作用是用于数据库恢复,保证事务的原子性和持久性 。
课件中明确指出:
- 通过分析日志,可以实现事务回滚 ,保证原子性;
- 通过分析日志,可以实现事务重做 ,保证持久性。
综合应用题
代码题

sql
select CNO,CNAME
from C
where TNAME = '刘老师';
select distinct SC.SNO
from C
inner join SC
on C.CNO = SC.CNO
where C.TNAME = '刘老师';
select SNO,CNO
from SC
where GR is NULL;
select count(*) as num
from SC
where CNO = 'C01';
select SNO,avg(GR) as avg_gr
from SC
group by SNO
having count(*) > 5 and min(GR) >=60;
SELECT SNO, AVG(GR) AS avg_gr
FROM SC
GROUP BY SNO
意思是:
-
输出每组的组名
SNO -
再对这组里的
GR求平均值
E-R图





