数据库技术及应用课程设计
《数据库技术及应用》
课程设计报告
姓 名: 班 级: 学 号: 指导老师:
年 月 日
目 录
一.项目背景 . .................................................................................................................................. 3
1.1项目原因阐述 . .................................................................................................................... 3 1.2项目任务目标 . .................................................................................................................... 3 1.3项目要求 . ............................................................................................................................ 3 二.需求分析 . .................................................................................................................................. 4
2.1功能需求 . ............................................................................................................................ 4
2.1.1读者信息管理 . ......................................................................................................... 4 2.1.2图书信息管理 . ......................................................................................................... 5 2.1.3图书类型管理 . ......................................................................................................... 5 2.1.4借书信息管理 . ......................................................................................................... 5 2.1.5删除图书信息 . ......................................................................................................... 6 2.1.6出版社信息 . ............................................................................................................. 6 2.2数据流图 . ............................................................................................................................ 7 三.数据库分析 . .............................................................................................................................. 7
3.1图书管理系统E-R 图 ........................................................................................................ 7
3.1.1数据关系图(类图) ................................................................................................... 7 3.1.2全局E-R 图 ............................................................................................................. 8 3.1.3局部E-R 图 ............................................................................................................. 8 3.2图书管理系统数据字典 . .................................................................................................. 10 四. 数据库设计 . ............................................................................................................................... 11
4.1创建“读者信息”数据库表 ............................................................................................... 11 4.2创建“图书信息”数据库表 ............................................................................................... 12 4.3创建“借阅信息”数据库表 ............................................................................................... 12 4.4创建“图书类型”数据库表 ............................................................................................... 12 4.5创建“出版社”数据库表 ................................................................................................... 12 五. 程序开发 . ................................................................................................................................... 13
5.1创建系统主窗体 . .............................................................................................................. 13 5.2完成读者信息录入功能 . .................................................................................................. 13 5.3完成读者删除及删除成功查询功能 . .............................................................................. 14 5.4完成图书添加功能 . .......................................................................................................... 14 5.5完成图书查询功能 . .......................................................................................................... 15 5.6完成读者借阅信息查询功能 . .......................................................................................... 15 5.7触发器代码: . .................................................................................................................. 15 5.8事务代码: . ...................................................................................................................... 16 六. 小结............................................................................................................................................ 17 七. 参考资料 . ................................................................................................................................... 17
一.项目背景
几年前,大多数学校图书馆都是封闭式管理,通过卡片登记借阅信息,只能实现有限的流通,有的甚至不能正常对学生开放,使得图书馆不能发挥应有的作用:即使是实现了正常流通的,也不能提供领导管理上需要的各种信息,如本馆各种资料分布及借阅情况。
1.1项目原因阐述
图书馆办馆的要求就是藏书全部开放,师生共享,开价借阅。这种借阅方式是适合当前我国国情、发挥图书馆应有作用的最佳方式,也是素质教育的最好体现。它充分发挥了图书馆的功效,最大限度地为师生服务,这也是图书馆自动化管理的最终目标。实现这一目标,必须有现代化的管理手段和管理体制。各地教育主管部门也都逐步提出学校要采用图书馆管理系统,从而实现人工管理做不到的一些功能并发挥图书馆的最大效益。而随着越来越多的学校采用了现代化的管理软件进行管理,进一步提高了学校管理的现代化水平,从而在 竞争中处于有利位置,也对其他兄弟学校起到了示范和促进作用。
1.2项目任务目标
图书馆管理系统总的实现目标是:建立以馆藏目录为基础的书目数据库;实现馆内采购、编目、流通、文献检索等信息化管理;建立图书馆动态网站;接入校园网为广大师生及时提供馆内的最新信息。长期的目标还要实现直接浏览电子图书以及馆际间的图书互借等。
1.3项目要求
1、完成图书管理系统的设计,数据库用sql 2005实现,前台界面用网页设计工具实现;分组要求如下:
(1)完成图书查询的功能 (2)完成添加新书的功能
(3)完成删除图书的功能(本组需完成基于事务的删除图书功能和基于触发器的删除图书的功能) (4)完成借书的功能
代码尽量写于后台数据库,多使用存储过程。
二.需求分析
2.1功能需求
一般通用的图书管理系统包括系统管理、读者管理、编目、图书流通、统计、查询等功能。比较先进的能够在一个界面下实现图书、音像、期刊的管理,设置假期、设置暂离锁、暂停某些读者的借阅权、导入导出读者、交换MARC 数据、升级辅助编目库等。此外阻随着Internet 应用的发展,一个完善的系统还应提供无缝接入Internet 的功能,通过IE 浏览器让读者使用借阅资料查询、更换密码、预约、资料检索等功能。有些系统还能提供读者自助服务,可以开放一些客户机让读者自行管理密码、查询自己的借阅史、预约资料、检索资料等。
下图所示是图书馆理系统所必备的功能。
2.1.1读者信息
读者信息管理用于管理读者相关的信息,包含的功能模块如下图所示。
2.1.2图书信息
图书管理用于管理图书相关的信息,包含的功能模块如下图所示。
2.1.3图书类型
图书类型管理用于管理期刊相关的信息,包含的功能模块如下图所示。
2.1.4借书信息
借书信息管理用于管理图书流通环节相关的操作,包含如下图所示的功能模块。
2.1.5删除图书信息
2.1.6出版社信息
2.2数据流图
三.数据库分析
3.1图书管理系统E-R 图 3.1.1数据关系图(类图
)
3.1.2全局E-R 图
3.1.3局部E-R 图
下图实体读者的E-R 模型图:
下图是实体图书信息的E-R 模型图:
下图是读者借书的借阅E-R 模型图:
下面是图书类型的E-R 图
下面是图书删除信息的E-R 图
下面是出版社信息的E-R 图
3.2图书管理系统数据字典
四. 数据库设计
4.1创建“读者信息”数据库表
4.2创建“图书信息”数据库表
4.3创建“借阅信息”数据库表
4.4创建“图书类型”数据库表
4.5创建“出版社”数据库表
五. 程序开发
5.1创建系统主窗体
5.2完成读者信息录入功能
5.3完成读者删除及删除成功查询功能
删除成功后查询
5.4完成图书添加功能
5.5完成图书查询功能
5.6完成读者借阅信息查询功能
5.7触发器代码:
ALTER TRIGGER [dbo]. [aaa] ON [dbo]. [book] INSTEAD OF DELETE AS BEGIN
DELETE book FROM DELETED
WHERE book. bookID =DELETED . bookID WHERE borrow. bookID =DELETED . bookID
DELETE borrow FROM DELETED END
5.8事务代码:
private void button3_Click_1(object sender, EventArgs e) {
if (textBox2.Text != "") {
SqlConnection sqlConnection = new SqlConnection();
SqlTransaction sqlTransaction = sqlConnection.BeginTransaction(); SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Connection = sqlConnection; sqlCommand.Transaction = sqlTransaction; try {
Dbhelper.connection.Open();
string sql1 = string.Format("delete from borrow where bookid ='{0}'", textBox2.Text);
SqlCommand con = new SqlCommand(sql1, Dbhelper.connection); int c = con.ExecuteNonQuery();
string sql = string.Format("delete from book where bookid ='{0}'", textBox2.Text);
SqlCommand commmand = new SqlCommand(sql, Dbhelper.connection);
int ab = commmand.ExecuteNonQuery(); if (c != null && ab != 0) {
MessageBox.Show("删除成功", "保存"); } else {
MessageBox.Show("删除失败"); return; }
sqlTransaction.Commit(); }
catch (Exception ex) {
MessageBox.Show(ex.ToString ()); sqlTransaction.Rollback(); }
finally {
Dbhelper.connection.Close(); } }
else {
MessageBox.Show("请输入图书编号!"); }
六. 小结
在本次数据库课程设计中,我的题目是《图书管理系统》,我采用了c#+SQL Server 2005实现此系统。为了既能全面复习理论知识,又能将理论知识用于实践,提高自己的实践能力。我完成此次课程设计的主要步骤是:
首先,对数据库和c#的基础知识进行了比较系统的复习。掌握了数据库的重要概念和重点内容。掌握了存储过程,触发器,事务控制的基本概念和格式。另外,我阅读了有关C#数据库的书籍,获得了完成此次课程设计的基本知识。
其次,我对老师分配的题目进行了仔细的研究,了解了要实现的基本功能。然后根据要实现的功能深入考虑了系统应该包含的基本表,表之间的关系,以及各个表包含的属性及其数据类型。
最后,根据掌握的理论知识和对题目的分析,我正式开始了课程设计,首先建立了一个数据库book, 然后在此数据库中建立了reader ,booktype ,borrow ,book 以及publisher 五个表,并分别定义了各个表的属性及其数据类型。我用学到的C#知识,在C#中编写了各个窗口代码。最后,把C#页面和数据库进行了连接,完成了此次课程设计。
在此次课程设计中,我遇到了很多问题,但是,我总是屡败屡战,找相关的大量书籍进行了研究和阅读,比较顺利地完成了课程设计。另外,在课程设计中,我得到了赵孟德老师和同学们的热心帮助,在此,要再次感谢感谢他们的热心帮助。
七. 参考资料
1. 《计算机软件产品开发文件编制指南》
2. 《现代软件工程》 周之英 编著. 科学出版社. 2000.1
3. 《工程应用软件开发技术》 唐任仲 编著. 化学工业出版社. 1999.5 4. 萨师煊, 王珊. 《数据库系统概论》. 高等教育出版社
5. 郑人杰,殷人昆,陶永雷.《实用软件工程》.清华大学出版社.1997.4 6. 李瑞旭, 孙凤芝. 《c#程序设计教程》. 中国电力出版社