![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
某校图书管理系统具有以下功能。 (1)借书:先为读者办理借书证,借书证上记录读者姓名、学号、所属系和班级等信息。借书时根据读者的借书证查阅读者档案,若借书数目未超过规定数量,则办理借书手续,修改库存记录及读者档案;若超过规定数量则不予借阅。 (2)还书:根据读者书中条形码,修改库存记录及读者档案,若借阅时间超过规定期限则罚款。 (3)图书管理员还要定期生成订书清单,包括书名、图书代号、单价、数量等
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)
第1题
以下是某图书管理系统的数据库模式: 读者(借书证号,姓名,联系电话,身份证号,注销标记) 主键:借书证号 出版社(出版社名称,联系电话,地址) 主键:出版社名称 采购图书(ISBN,书名,作者,责任编辑,出版社名称,出版时间,单价,馆藏数量) 主键:ISBN 外键:出版社名称,参照 出版社(出版社名称) 上架图书(内部编码,检索号,借阅状态,ISBN,上架时间) 主键:内部编码 外键:ISBN,参照 采购图书(ISBN) 借阅(借阅编号,借书证号,图书内部编码,借阅时间,归还时间) 主键:借阅编号 外键:借书证号,参照 读者(借书证号) 图书内部编码,参照 上架图书(内部编码) 请基于上述数据库模式,用SQL实现以下操作: 1、创建基本表“采购图书”,要求包含主、外键定义,以及其它相关的完整性约束。 2、在已成功创建的“读者”基本表上,添加对属性“注销标记”的约束,要求该属性的值只能为“是”或“否”。 3、列出借书证编号为”S20170204”的读者借阅过的所有书籍的名称。 4、读者未归还的图书超过一定数量将不能再办理图书借阅,实现查询读者未归还的图书数量。 5、查询已采购图书中尚未上架的图书ISBN和书名,以便于指导工作人员及时上架图书(要求:不要使用集合查询实现)。 6、列出所有的上架图书的ISBN号和总被借阅次数(提示:考虑外连接)。 7、计算借书次数最多的读者姓名和身份证号(要求:先创建读者借阅次数视图,再在视图上查询)。 8、借书证编号为”S20170204”的读者曾借阅过一本《数据库原理与应用》,今日前来归还,经扫描该本书的内部编码是“N20160347”,请更新相关基本表中的数据。 9、增加一条记录到读者表中,借书证编号为“S20190141”,姓名为“张赫”,其他信息未知。 10、从基本表“上架图书”中删除那些已上架两年但从未被借过的图书。 11、图书的借阅情况是图书流通的历史记录,图书管理员只能添加记录和修改归还时间,而没有其他权限,请实现对图书管理员的授权操作。 12、读者经常按书名进行上架图书的查询,涉及到基本表“上架图书”和“采购图书”的连接,为加快查询速度,请在“上架图书”表的属性“ISBN”创建非聚集索引。
第2题
【问题1】(5分) 对关系“借还”,请回答以下问题: (1)列举出所有候选键; (2)根据需求描述,借还关系能否实现对超出借书时长的情况进行正确判定?用 60字以内文字简要叙述理由。如果不能,请给出修改后的关系模式(只修改相关关系 模式属注时,仍使用原关系名,如需分解关系模式,请在原关系名后加1,2,…等进行区别)。 【问题2】(5分) 对关系“图书”,请回答以下问题: (1)写出该关系的函数依赖集; (2)判定该关系是否属于BCNF,用60字以内文字简要叙述理由。如果不是,请 进行修改,使其满足BCNF,如果需要修改其它关系模式,请一并修改,给出修改后 的关系模式(只修改相关关系模式属性时,仍使用原关系名,如需分解关系模式,请 在原关系名后加1,2,…等进行区别)。 【问题3】(5分) 对关系“书目”,请回答以下问题: (1)它是否属于第四范式,用60字以内文字叙述理由。 (2)如果不是,将其分解为第四范式,分解后的关系名依次为:书目1,书目2,…。 如果在解决【问题1】、【问题2】时,对该关系的属性进行了修改,请沿用修改后的属性。
第3题
第4题
Linda:Good morning. _____51_____ ?
Jack:Yes,I want to borrow a book.
Linda: _____52_____ ?
Jack: No, I don, t have one now. _____53_____?
Linda:Well,please fill in this form. first.
Jack: OK. (A few minutes later. )Here, s the completed form.
Linda:Thanks. The card will be ready in thirty minutes,and you can take it later.
Jack:Thank you. By the way, _____54_____ ?
Linda:Well,two weeks. But then,you can renew the book if you still need it.
Jack:I see. Thanks a lot.
Linda: _____55_____ .
第5题
A. SELECT姓名FROM读者WHERE NOT EXISTS; (SELECT借书证号FROM借阅WHERE借阅.借书证号=读者借书证号)
B. SELECT姓名,借书证号FROM读者WHERE (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)。
C. SELECT姓名,借书证号FROM读者WHERE NOT EXISTS; (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)
D. SELECT姓名,借书证号FROM读者WHERE借阅=NULL (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)
第6题
A.借书证号,图书编号
B.图书编号,借书日期
C.借书日期,还书日期
D.借书证号,借书日期
第7题
A. 借书证号,图书编号
B. 图书编号,借书日期
C. 借书日期,还书日期
D. 借书证号,借书日期
第8题
A.借书证号,图书编号
B.图书编号,借书日期
C.借书日期,还书日期
D.借书证号,借书日期
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!