数据库课程设计报告

时间:2024.4.13

数据库课程 设计报告 名 称: 图书管理系统

时 间:

学 生 姓 名: 邓天顺

学 系: 计算机系

专 业:

指 导 教 师: 樊红芳

目录

1.设计目标····················································································· 1

2.数据组织····················································································· 2

3.关系图························································································· 3

4.详细设计······················································································ 4

5.总结····························································································· 5

6.参考文献······················································································ 5

1. 设计目标

目前图书馆进行信息管理的主要方式是基于手工处理,最多是用计算机的文本系统打印一些清单,信息处理工作量大,容易出错,缺乏系统、规范的信息管理手段。在电脑技术高速发展的今天,迫切需要充分利用计算机实现自动化管理。现在准备建立的图书管理系统,要把图书馆的图书管理、读者管理、图书借阅管理等日常管理工作实行计算机统一管理,以提高工作效率和管理水平。

实现图书管理信息系统的设计。这是一个数据结构的综合使用,涉及的知识面适中, 主要是针对对数据查询语句的使用。

此图书管理设计报告是基于SQL SERVER 2005建立的,可用于各种中小型的图书馆。

2.数据组织

表readers(读者信息表)结构

数据库课程设计报告

1

表readers(读者信息表)数据

数据库课程设计报告

表borrowinf(借阅信息表)结构

数据库课程设计报告

表borrowinf(借阅信息表)数据

数据库课程设计报告

表books(图书信息表)结构

数据库课程设计报告

表books(图书信息表)数据

数据库课程设计报告

2

数据库课程设计报告

数据库课程设计报告

表readertype(读者类型表)结构

数据库课程设计报告

表readertype(读者类型表)数据

3. 关系图

数据库课程设计报告

4.详细设计

--1. 查询类型为“学生”的读者信息。

select 编号,类型名称,姓名,限借阅数量,借阅期限 from readertype,readers where 类型编号=读者类型 and 类型名称='学生'

3

数据库课程设计报告

--2. 查询书名中含“程序设计”的图书信息。

select * from books where 书名 like '%程序设计%'

--3. 查询图书馆的藏书量。

select count(*) as '藏书量' from books

--4. 查询图书馆的图书总价值。

select sum(定价) as '图书总价值' from books

--5. 查询各个出版社的馆藏图书数量。

select 出版社,count(*) as '图书数量' from books group by 出版社

--6. 查询借期在“2004-1-1”到“2008-5-1”之间的各类读者的借阅数量。

select 类型名称,count(*) as '借阅数量' from readertype,borrowinf,readers where 编号=读者编号 and 读者类型=类型编号 and 借期 between '2004-1-1' and '2008-5-1' group by 类型名称 --7. 查询借期在“2004-1-1”到“2008-5-1”之间“C语言程序设计”一书的借阅情况。 select 读者编号,图书编号,书名,借期,还期 from borrowinf,books where 图书编号=编号 and 书名='C语言程序设计' and 借期 between '2004-1-1' and '2008-5-1'

--8. 查询读者编号、姓名及还可以借阅的图书数量。

select 编号,姓名,限借阅数量-已借数量 as '可借数量' from readers,readertype where 读者类型=类型编号

--9. 查询读者表中编号以‘2004’打头的读者信息。

select * from readers where 编号 like '2004%'

--10. 查询图书编号不以“A-F”打头的图书信息。

select * from books where 编号 not like '[a-f]%'

--11. 查询某日借书的读者的姓名。

select 姓名 from borrowinf,readers where 编号=读者编号 and 借期='2004-9-1' --12. 查询至少有两本相同书名的所有图书的信息,包括编号、书名和作者。

select 书名,编号,作者 from books where 书名 in (select 书名 from books group by 书名 having count(*)>1)

--13. 查询没有借阅图书的读者姓名。

select 姓名 from readers where 编号 not in (select 读者编号 from borrowinf)

--14. 查询借阅了“青山”图书的读者编号和姓名。

select 编号,姓名 from readers where 编号 in (select 读者编号 from borrowinf,books where 图书编号=编号 and 出版社='青山')

--15. 查询书价最低的图书的书名和书价。

select top 1 定价,书名 from books order by 定价

--16. 按书价从高到低排序,列出图书信息。

select * from books order by 定价 desc

--17. 将书名相同的图书按定价从高到低显示,列出图书信息。

select * from books order by 书名 ,定价 desc

--18. 创建借阅期限(JYQX)视图,含编号、借期、借阅期限、应还日期、还期五个字段,其中应还日期=借期+借阅期限。

create view jyqx as select books.编号,借期,借阅期限,借期+借阅期限 as '应还日期',还期

from books,borrowinf,readertype,readers where books.编号=图书编号 and readers.编号=读者编号 and 读者类型=类型编号

go

select * from jyqx

4

--19. 给出借阅超期信息单。

from select 读者编号,姓名,books.编号,书名,借期+借阅期限as '应还日期'

books,borrowinf,readertype,readers where books.编号=图书编号and readers.编号=读者编号and 读者类型=类型编号and (还期is null and 借期+借阅期限<getdate() or 借期+借阅期限<还期)

--20. 查询编号为某某的读者的借阅信息。

select 姓名,类型名称,图书编号,借期,借期+借阅期限 as '应还日期' from

books,borrowinf,readertype,readers where books.编号=图书编号 and readers.编号=读者编号 and 读者类型=类型编号 and readers.编号='2004060002'

5.总结

1)课程设计过程中出现的问题、原因及解决方法:

出现的主要问题是:语法格式不过关

原因:使用聚合函数时,分组语句的搭配不明确,不知道什么时候可有可无。

解决方法:

a. 如果没有group by 子句,select 列表中不允许出现字段与分组函数混用的情况。

b.在带有group by子句的查询语句中,在select列表中指定的列要么是group by 子 句中指定的列,要么包含聚组函数。出现在select列表中的字段,如果不是包含在分组函数 中,那么该字段必须同时出在Group by子句中。

c.group by后面字段的顺序不同分组结果不同。

出现的问题还有,忘记了DATEDIFF相隔时间函数

datediff(day,'2014-1-1',getdate())

2)课程设计的主要收获:

通过这次课程设计,对学过的知识进行了回顾,一些理解的不够深刻的问题,能有机会再次得以解决。从碰到问题,到思考分析问题,从查阅相关书籍看,请同学和老师帮忙,到 真正解决问题,经历了,从疑惑到痛苦再到喜悦的全过程。这次课程设计给予我更多的,还是查询设计的经验与其过程中的酸甜苦辣。同时很感谢帮助过我的同学,更感谢樊老师的悉心教导。

3)对今后课程设计的打算:

熟练掌握基础知识内容,定期回顾旧知识;广泛了解相关知识,;积极发挥思维,敢于尝试勇于创新;勤于动手,多思多问。

6.参考文献

《数据库应用技术——SQL Server 2008 R2》(主编:周慧 施乐军)中国邮电出版社 5


第二篇:数据库应用课程实验报告7


《数据库应用》 实验报告(7)

实验名称:________________  指导教师:___________ 完成日期:___________

专    业:________________ 班    级:___________  姓    名:___________

更多相关推荐:
数据库课程设计报告范例

数据库课程设计报告课题名称:图书管理统专业:信息与计算科学班级:信计071班小组人员:***一.背景资料在高校中,学生的数量较多,图书的数量也比较多,每天图书的借阅量比较大,采用手工的处理方式已经不能满足这种需…

数据库课程设计报告

20xx级数据库课程设计任务书设计目的数据库课程设计是在学生系统地学习了数据库系统原理课程后按照关系型数据库的基本远离综合运用所学的知识设计开发一个小型的数据库管理信息系统通过对一个实际问题的分析设计与实现将原...

数据库课程设计报告

南京理工大学泰州科技学院计算机科学与技术系信管专业10信管2班级大型数据库课程设计报告书姓名赵敏学号指导老师职称讲师设计地点起讫时间完成报告书时间20xx年12月5日第1页课程设计要求各专业学生应根据课程任教老...

数据库课程设计报告

数据库课程设计设计题目数据库创建和修改表专业物联网工程班级20xx级设计人林升学号20xx01052143山东科技大学20xx年7月3日课程设计任务书一课程设计题目创建和修改表的定义二课程设计主要参考资料1数据...

SQLServer数据库课程设计报告

武汉工业学院数据库系统课程设计说明书设计题目选课管理系统姓名学院专业学号指导教师20xx年6月8日一读书笔记1SQL数据库的实际应用SQL包括了所有对数据库的操作主要是由4个部分组成1数据定义这一部分又称为SQ...

数据库课程设计报告

计算机与控制工程学院数据库原理及应用课程设计报告题目名称选课系统专业计科班级计1211学号20xx58501149姓名李利娟指导教师毕远伟20xx年01月11日1课程设计评语班级计1211学号20xx58501...

分布式数据库课程设计报告

分布式数据库在学生信息管理系统中的应用班级姓名设计时间指导教师评语评阅成绩目录摘要31第一章绪论411课题研究的意义412分布式数据库技术国外发展现状413分布式数据库技术国内发展现状514分布式数据库技术发展...

学生成绩管理系统 数据库课程设计报告

学生成绩管理系统数据库课程设计报告目录1、开发背景...22、系统描述...23、数据分析...23.1、数据流图...23.2、数据字典...24、概念模型设计...24.1E-R图...25.逻辑模型设计及…

数据库课程设计报告090247

北京广播电视大学数据库应用课程设计报告书题目出版社图书管理系统姓名杨春振学号20xx7110090247班级09春计算机分校通州电大指导教师姚行洲设计日期20xx年7月北京广播电视大学课程设计任务书题目出版社图...

数据库课程设计报告

徐州工程学院信电学院计算机网络专业数据库课程设计教学管理系统的设计1概述11设计目的用户请求经应用程序的转化化为对数据库中的相应的表或视图的操作数据库再把处理的结果或都是错误信息返回结应用程序应用程序把结果返回...

数据库课程设计报告

数据库课程设计报告学号20xx1004357姓名李世荣班级19xx23指导老师胡霍真邮件管理系统摘要21世纪是网络飞速发展的时代电子邮件已经成为热门话题随着网络技术的不断发展网络应用已经渗透到人类社会的各个角落...

Oracle数据库课程设计报告

存档资料成绩:华东交通大学理工学院课程设计报告书所属课程名称Oracle11g数据库基础教程题目图书管理系统分院电信分院专业班级电子商务1班学号***学生姓名***指导教师付念20XX年12月20日 …

数据库课程设计报告(17篇)