数据库期末复习题
更新时间:2023-09-23 05:15:01 阅读量: 人文社科 文档下载
企业中小型数据库系统开发期末复习题
选择、填空题参照课后习题中的题目。 三、简答题
1、DBS由哪几个部分组成?
数据库、数据库管理系统、数据库应用系统、数据库管理员
2.数据库的并发操作会带来数据不一致性有哪些问题?
丢失更新、不可重复读、脏读和幻读。
3.请叙述数据库设计的六个步骤。
(1)需求分析(2)概念设计(3)逻辑设计(4)物理设计(5)数
据库实施 (6)数据库运行和维护
4.数据库的完整性约束有哪三个?
实体完整性。 参照完整性 用户自定义完整性
5.请详细叙述三级封锁协议。
三级封锁协议在二级封锁协议的基础上,再规定S锁必须在事务T结束后才能释放。如果未获准加S锁,则该事务T进入等待状态,直到获准加X锁后该事务才继续执行。
三级封锁协议除了能防止丢失修改和读“脏”数据的问题之外,还能解决不可重复读的问题。但是带来了其它问题:死锁和活锁。
6.数据库技术的发展经历了哪三个阶段?
人工管理阶段,文件系统阶段,数据库系统阶段。
四、本题用到下面三个关系表:
CARD 借书卡: CNO 卡号,NAME 姓名,CLASS 班级
BOOKS 图书: BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数
BORROW 借书记录:CNO 借书卡号,BNO 书号,RDATE 还书日期 备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。
要求用SQL语句实现下列题目:
1. 写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。
create table borrow (
cno int not null foreign key references card(cno), bno int not null foreign key references books(bno), rdate datetime,
primary key(cno,bno)) )
2. 找出借书超过5本的读者,输出借书卡号及所借图书册数。
SELECT CNO,借图书册数=COUNT(*) FROM BORROW GROUP BY CNO HAVING COUNT(*)>5
3. 查询借阅了\水浒\一书的读者,输出姓名及班级。
select cname,class from card
where cno in (
select cno from borrow where bno=(select bno from books where bname ='水浒') )
4. 查询过期未还图书,输出借阅者(卡号)、书号及还书日期。
select * from borrow where rdate 5. 查询书名包括\网络\关键词的图书,输出书号、书名、作者。 select bno,bname,author from books where bname like '%网络%' 6. 查询现有图书中价格最高的图书,输出书名及作者。 select bname,author from books where price in (select max(price) from books) 7. 查询当前借了\计算方法\但没有借\计算方法习题集\的读者,输出其借书卡号,并按卡号降序排序输出。 8. 将\班同学所借图书的还期都延长一周。 update borrow set rdate=dateadd(dd,7,rdate); UPDATE b SET RDATE=DATEADD(Day,7,b.RDATE) FROM CARD a,BORROW b WHERE a.CNO=b.CNO AND a.CLASS=N'C01' 9. 从BOOKS表中删除当前无人借阅的图书记录。 10.建立一个视图,显示\力01\班学生的借书信息(只要求显示姓名和书名)。 11.查询当前同时借有\计算方法\和\组合数学\两本书的读者,输出其借书卡号,并按卡号升序排序输出。 12.假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句。 13.对CARD表做如下修改: a. 将NAME最大列宽增加到10个字符(假定原为6个字符)。 b. 为该表增加1列NAME(系名),可变长,最大20个字符。 14.创建一个触发器,要求库存册数在输入时不能为负数,如果为负数则取消操作。 五、现有图书借阅关系数据库如下: 图书(图书号、书名,作者,单价,库存量) 读者(读者号,姓名,工作单位,地址) 借阅(图书号,读者号,借期,还期,备注) 其中:还期为NULL表示该书未还。 用关系代数表达式实现下列1-4小题: 1、检索读者号为R016的读者姓名、工作单位; select 姓名,工作单位from 读者where 读者号='R016' 2、检索借阅图书号为B5的读者姓名; select 姓名from 读者 where 读者号in (select 读者号from 借阅where 图书号='B5') 3、检索读者“李林”所借图书的书名; select 图书.书名from 图书,读者,借阅where 读者.姓名='李林'and 读者.读者号=借阅.读者号and 借阅.读书号=图书.图书号 4、检索读者“李林”所借图书中未还的书名; select 图书.书名from 图书,读者,借阅where 读者.姓名='李林' and 还期is null and 读者.读者号=借阅.读者号and 借阅.读书号=图书.图书号 用SQL语言实现下列5-10小题: 5、检索读者号为R016的读者姓名、工作单位; 6、检索借阅图书号为B5的读者姓名; 7、检索读者“李林”所借图书的书名; 8、检索读者“李林”所借图书中未还的书名; 9、将读者“李林”所借图书的信息从借阅表中删除; delete from 借阅 where 读者号in (select 读者号from 读者where 姓名='李林') 10、建立未还图书的读者姓名和单位视图。 create view viewname as select 读者.姓名,读者.工作单位 from 读者,借阅 where 读者.读者号=借阅.读者号and 还期is null 六、操作题 有如下三个关系R、S、T,请写出下列表达式的运行结果。 R表 A a b c e A c b b e B b B b d b d B a a d d C c B>’c’(R) C c a c b C c c a b S表 T表 (1)σ A b e B d d C a b (2)σ A b e B d d B>’c’ ∧A>’a’(R) C a b (3)∏C(S) C c c a b (4)R×S A a a a a b b b b c c c c B b b b b d d d d b b b b C c c c c a a a a c c c c A c b b e c b b e c b b e B a a d d a a d d a a d d C c c a b c c a b c c a b
正在阅读:
数据库期末复习题09-23
感谢情人的话语02-10
基于PC的局域网组建与实现01-25
《骆驼祥子》名著导读练习及答案11-08
食品安全问题研究综述07-07
计算机二级考试VB填空练习题11-14
公司客服部门2022年度工作总结范文03-24
面对挫折作文450字07-11
监控系统投标书(含施工方案)06-19
- 粮油储藏基础知识
- 论文范文(包括统一封面和内容的格式)
- 经典解题方法
- 综合部后勤办公用品管理办法+领用表
- 学生宿舍突发事件应急预案
- 16秋浙大《生理学及病理生理学》在线作业
- 四分比丘尼戒本(诵戒专用)
- 浙江财经大学高财题库第一章习题
- 九大员岗位职责(项目经理、技术负责人、施工员、安全员、质检员、资料员、材料员、造价员、机管员)
- 旅游财务管理习题(学生版)
- 德阳外国语高二秋期入学考试题
- 投资学 精要版 第九版 第11章 期权市场
- 控制性详细规划城市设计认识
- bl03海运提单3国际贸易答案
- 2010-2011学年湖北省武汉市武珞路中学七年级(上)期中数学试卷
- VB程序填空改错设计题库全
- 教师心理健康案例分析 - 年轻班主任的心理困惑
- 民间借贷司法解释溯及力是否适用?
- 三联书店推荐的100本好书
- 《化工原理》(第三版)复习思考题及解答
- 复习题
- 期末
- 数据库