• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
LvGJ
沉迷学习不秃头
博客园    首页    新随笔    联系   管理    订阅  订阅
复试_Ex2015_
2015

1.填空题(共 20 分,没空 2 分)
1) 数据模型包括_____________,,,
从应用层区分,可分为 3 个
_________,,,
主要的数据模型是 3 个
_____,__________________,______________等。

数据结构、数据操作、完整性约束
逻辑模型、物理模型、概念模型
层次模型、网状模型、关系模型

2)事务的四个特性是______________,,,______________。

ACID A原子性,C一致性,I隔离性,D持久性

3)关系分解的两个原则是______________,______________。

无损连接性,保持函数依赖

4)关系模型的所运用的数学运算是______________,______________。

关系代数,关系演算

5 ) E-R 图合并时,分 E-R 图会碰到的冲突是: ,。

属性冲突、命名冲突、结构冲突(P228)

2.登记日志的原则是什么,为什么?(12 分)

1.登记的次序严格按并发事务执行的时间次序(P300)
2.必须先写日志,后写数据库
原因:因为写日志和写数据库是两个不同的操作,如果再这连个操作之间出现了故障,倘若先写了
数据库,没有写日志,要进行恢复的话就没办法恢复这个修改了;若先写了日志,最多就是多做一次UNDO操作

3.视图的作用是什么?(12 分)

1.简化用户的操作:用户只用关心自己关心的操作
2.可以使用户以多种角度看待同一数据
3.对重构数据库提供了一定的逻辑独立性:如果基本表增加了什么字段,但是对于视图来说没有改变,这就是逻辑独立性
4.能够对机密数据提供安全保护
5.适当利用视图可以更清晰的表达查询

4.下面是四个表以及表字段的描述,按要求回答问题。 (32 分)
S(SNO,SNAME,CITY,STATUS) //供应商编号,供应商名称,供应商城市,供货状态
P(PNO,PNAME,COLOR,QTY) //零件编号,零件名称,零件颜色,零件数量
J(JNO,JNAME) //工程号,工程号名称。。。。这个表没用到,字段记不清了
SPJ (PNO,SNO,JNO,QTY ) //项目关系表,零件号,供应商号,工程号,数量

  1. 用关系代数写出求没有使用武汉供应商生产的黑色零件的工程号(6 分)。
  2. 用关系代数写出,求至少使用了所有上海供应商生产的零件的工程号(8 分)。
  3. 用 SQL, 求项目 J1 中使用黑色零件的供应商(6 分)。
  4. 修改所有上海供应商的供货状态为“无货“(6 分)。
  5. 将零件(PNO1, PNAME,1 COLOR1,100)插入表 P 中(6 分)。

\(1. Π_{JNO}(J)-Π_{JNO}(\sigma_{s.city='武汉' \cap p.color='黑'}(S\Join P\Join SJ))\\2.Π_{PN0,JNO}(SPJ)\div Π_{PNO}(\sigma_{s.city='上海'}(S\Join SPJ))\)

3.SELECT (DISTINCT)SPJ.sno
	FROM SPJ JOIN P ON SPJ.PNO = P.PNO
    WHERE SPJ.JNO = 'J1' AND P.color = '黑';
4.UPDATE s
	SET s.`status` = '无货'
	WHERE s.`city` = '上海';
5.INSERT INTO p VALUES('PNO1','PNAME','COLOR1',100)

5.R=(A,B,C,D,E) F=(A->BC, CD->E, B->D, E->A)(12 分)

  1. 求 B 的属性闭包(5 分)
  2. 求 R 的候选码(7 分)
  1. 书P191求闭包:BD

2)A,BC,E,CD

6.R=(A,B,C,D), F={B->D, AB->C}(12 分)

  1. 该模型属于什么范式(4 分)
  2. 如何分解到 BCNF(8 分)

1)1NF,个人觉得该关系模式的候选码为AB,而D部分依赖于候选码,所以达不到2NF

2)BCNF分解算法见书P199

  • 应该分解为 \(R_1=(B,D),R_2=(A,B,C)\)

    这样每一个每一个决定因素都包含码

    不过感觉应该从1NF->2NF->3NF->BCNF

posted on 2020-03-13 12:42  LvGJ  阅读(160)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3