收藏 分享(赏)

图书管理系统的设计.doc

上传人:精品资料 文档编号:10704068 上传时间:2019-12-29 格式:DOC 页数:36 大小:246.21KB
下载 相关 举报
图书管理系统的设计.doc_第1页
第1页 / 共36页
图书管理系统的设计.doc_第2页
第2页 / 共36页
图书管理系统的设计.doc_第3页
第3页 / 共36页
图书管理系统的设计.doc_第4页
第4页 / 共36页
图书管理系统的设计.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、莱 芜 职 业 技 术 学 院毕业设计(论文)论文题目:图书管理系统的设计所 在 系 信 息 工 程 系 姓 名 郭仁堂 专 业 计 算 机 应 用 技 术班 级 13 计算机应用 指导老师 王颖 2016 年 5 月 6 日评 审 表学号 201323040118姓名 郭仁堂 学制 3 年专业 计算机应用技术 班级 13 计算机应用技术论文题目 图书管理系统的设计指导教师 王颖 职称或职务指导教师评语:成绩: 指导教师签名: 年 月 日系审查意见:成绩: 审查人签名: 年 月 日学校终审意见:成绩: 签名: 职称: 年 月 日答 辩 情 况 记 录答 辩 情 况答辩题目正 确 基本正确 经提

2、示回答 不 正 确 未 回 答此表格由主持答辩的同志填写;正确为优秀;基本正确为良好;经提示回答为及格;不正确,不回答为不及格。答辩委员会(或小组)评语:成绩: 答辩主持人签名: 职称: 年 月 日毕业论文审查不及格补审意见:成绩: 补审人签名: 职称: 年 月 日图书管理系统的设计摘要近年来,随着社会经济的发展,大家对图书知识的渴求也随之强烈,自然对图书馆系统性的要求也随之提高。图书数量的相应增加,有关图书的各种信息量也成倍增加,面对这庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因

3、此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。本系统图书管理系统,利用 C# 作为前端的应用开发工具VISUAL STUDIO 2010,SQL SERVER2008 作为后台的数据库,采用浏览器/服务器的模型构建,结构健壮灵活,在数据处理、人机界面、数据通信、系统维护管理等方面具有功能全面、实用;界面直观简洁,实用维护简单;权限管理完善,安全性高等特点。实现了管理员、图书、学生的信息维护,图书信息管理、借书、还书的管理,图书库存信息、学生信息的查询和各种书籍借阅浏览等功能。关键字:图书管理;借书;还书;Asp.NET。目录第 1章 概括71.1 背景背景

4、及目的-71.2 系统功能模块设计简介-7第 2章 图书管理系统需求分析-92.1 应用需求分析-92.2 功能需求分析-102.3数据需求分析-10第 3章 数据库设计-113.1数据库设计平台-113.2 数据库 er模型图-113.3 数据库的设计及内容简介-12第 4章 功能模块概要设计-174.1 功能模块开发平台-174.2 功能模块设计及内容简介-174.3 功能模块设计图 -18第 5章 功能模块详细设计-195.1 借阅图书模块设计-195.2 归还图书模块设计-28论文总结33致谢34第 1章 概括1.1 背景及目的背景及目的当今时代是飞速发展的信息时代,各行各业都离不开信

5、息处理,这正是计算机被广泛应用于社会各行各业的原因。使用计算机进行信息管理是行业现代化的一个标志,此举不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性:快速操作、智能分析、海量存储和长期保存等等。使用计算机进行信息管理与信息管理系统的开发密切相关,因为信息管理系统的开发是利用信息管理系统进行管理的前提。本系统就是为了进行现代化图书馆信息管理而设计的。本系统是一个针对大中专院校图书馆的图书信息管理系统,着力于解决原来手工管理出现的问题,如效率低、易出错、手续繁琐,还耗费大量的人力和物力,旨在实现现代化的信息管理。1.2 系统功能模块设计简介本系统

6、包含读者登记、添加新书、读者借书、读者还书、图书注销、查询读者、查询图书等等功能。*读者登记时要为读者编制读者卡号,包括读者的具体信息(包括读者编号、姓名、 性别、类别、有效证件、联系电话、联系地址等),写入读者文件中。*添加新书时要为该书编制图书卡片(包括分类图书编号、图书书名、作者、类别、 图书单价和入库日期等信息),写入图书文件中。*读者借书时,先检查该读者是否为有效的读者,若无效则拒绝借书,然后检查该 读者所借图书是否超制数,若超过则拒绝借书,再检查有尚未归还的过期图书,若有则拒绝借书,最后查找要借的图书是否还有,如果有则办理借出手续,登记图书分类号、读者号和借阅日期等。*读者还书时,

7、根据书号,从借书文件中读出有关记录,标明还书日期,如果图书 过期,则处以罚款。*系统还应提供图书清理的功能,对无价值的和过时的图书可以进行注销。*查询要求分为查询某位读者、某种图书和全局图书三种情况。第 2章 图书管理系统需求分析2.1 应用需求分析图书管理系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。本系统结构分为读者类别管理、读者档案管理、图书类型管理、图书档案管理以及图书流程管理,读者管理可以浏览读者的信息,可以对读者信息进行维护。图书管理可以

8、浏览图书的信息,可以对图书信息进行维护。借阅管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。本系统主要解决的问题是利用关键字对数据库进行查询。图书管理系统需要满足来自二方面的需求,这二个方面分别是图借阅者和图书管理系统管理人员。图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书管理系统管理人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书情况给借阅者查看确认,对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看。图书管理系统管理人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑。在此模块中,图书管理系统管理

9、人员可以为图书借阅者加入借书记录或是还书记录,并给用户查看和确认。管理员可以对图书的基本信息进行浏览、查询、添加、删除、修改和统计。还可以对借阅者的基本信息进行浏览和查询以及对图书馆的借阅信息进行统计。2.2 功能需求分析1.管理者登录2.系统设置:管理员设置、图书馆信息设置、罚金设置3.图书管理:添加、浏览、修改、删除、借阅、归还、挂失、详细查看、检索4.读者管理:添加、浏览、删除、修改、详情查看、检索5.信息查询:查询2.3 数据需求分析1.管理员信息:用户名、密码、权限、编号。2.图书信息:除读者需要的信息以外,还需要录入时间、产品的编号以及图书是否挂失的信息。3.读者信息:读者编码、姓

10、名、性别、类别、联系电话、联系地址、注册时间、是否挂失。4.借还书信息:读者编码、图书编码、借书数量、借阅时间、还书时间第 3章 数据库设计3.1数据库设计平台本数据库设计采用了 Microsoft SQL Server 2000作为开发平台。3.2 ER模型出版社作者图书书名图书编码是否挂失库存数量存入位置入库时间图书单价图书图书类别查询/借阅联系电话读者类别读者姓名读者编码联系地址有效证件证件号码登记日期是否挂失读者性别读者3.3 数据库的设计及内容简介打开 Microsoft SQL Server 2000,因为我设计是图书管理系统,所以为了方便,命名数据库的名称为 tsglxt。然后新

11、建表,主要包括图书馆信息表(tsgxx 表)、管理员表(admin 表)、图书表(book 表)、借书表(Jhbook 表)、借书人表(borrow_reader表)、图书挂失表(tsgs 表)、图书注销表(tszx 表)、出版社表(cbs表)、图书存放位置表(cfwz 表)、读者类别表(dzlb 表)、用户表(users 表)、读者挂失表(dzgs 表)、有效证件表(yxzj 表)、图书类别表(booklb 表)等(1) 名称:管理员表表名称标识:admin 表字段名 字段类型 主/外键admin_id char padmin_xm charadmin_name charadmin_pass

12、word char(2) 名称:图书表表名称标识:book 表字段名 字段类型 主/外键Book_id Char(10) p Book_name Nvarchar(50) author Char(10) publish Nvarchar(50) class Char(10) 学生 包括 教师bookdj Char(10) inputtime Nvarchar(50) sjmc Char(10) nrjj Nvarchar(50) sfgs Char(10) kcsl Int(4) jcsl Int(4) (3) 名称:出版社表表名称标识:cbs 表字段名 字段类型 主/外键publish Nv

13、archar(50) (4) 名称:图书挂失表表名称标识:tsgs 表字段名 字段类型 主/外键Book_id char(10) pSfgs char(10)Book_name nvarchar(50)(5) 名称:存放位置(书架名称)表表名称标识:cfwz 表字段名 字段类型 主/外键sjmc Char(10) (6) 名称:读者类别表表名称标识:dzlb 表字段名 字段类型 主/外键dzlb Char(10) kjsl Char(10) zcqx Char(10) (7) 名称:借还书表表名称标识:jhbook 表字段名 字段类型 主/外键User_id char(10)Uesr_name

14、 char(20)Book_id char(10)Jstime datatimeHstime datatime(8) 名称:图书馆信息表表名称标识:tsgxx 表字段名 字段类型 主/外键Tsg_name Nvarchar(50) Tsg_admin Char(10) B_time Char(10) Photo Nvarchar(50) Emile Nvarchar(50) Address Nvarchar(50) Nrjj Char(10) (9) 名称:注销图书表表名称标识:zxts 表字段名 字段类型 主/外键Book_id Char(10) p Book_name Nvarchar(5

15、0)(10) 名称:读者挂失表表名称标识:dzgs 表字段名 字段类型 主/外键User_id Char(10) P sfgs Char(10) User_name Char(10) (11) 名称:读者表表名称标识:users 表字段名 字段类型 主/外键User_id Char(10) P User_name Char(10) User_xb Char(10) User_lb Char(10) Photo Nvarchar(50) Address Nvarchar(50) Yxzj Char(10) Zj_number Nvarchar(50) Dj_time Char(10) sfgs

16、Char(10) (12) 名称:有效证件表表名称标识:yxzj 表字段名 字段类型 主/外键yxzj Char(10) (13) 名称:图书类别表表名称标识:booklb 表字段名 字段类型 主/外键class Char(10)(14) 名称:借书人表表名称标识:borrow_reader 表字段名 字段类型 主/外键User_id Char(10) P Kjsl Int(4) Yjsl Int(4) 第 4章 功能模块概要设计4.1 功能模块平台本功能模块应用软件的开发采用了 Microsoft.Visual.Studio.2005 C#作为软件设计和开发平台。功能应用软件的界面采用菜单方

17、式进行操作,具有操作方便、直观,功能明确、统一,对各界面的调用均在程序的主窗口下进行操作。4.2 功能模块设计及内容简介打开 Microsoft.Visual.Studio.2005 C#,新建项目并命名为图书管理系统。新建窗体,拖入空间设计窗体。本系统主要包括 Welcome登录模块、系统设置模块、图书设置模块、读者管理模块、图书管理模块、系统查询模块、帮助模块等模块。注销图书4.3 功能模块设计图Welcome 欢迎登陆界面主 界 面系统设置 图书设置 读者设置 图书管理 信息查询图书馆设置退出系统图书分类设置出版社存放位置 图书资料借阅图书归还图书帮助信息记事本管理员设置读者类型设置读者

18、有效证件读者信息读者挂失解除挂失挂失图书图书信息查询借阅图书查询归还图书查询挂失图书查询读者信息查询读者挂失查询第 5章 功能模块详细设计5.1 借阅图书模块设计5.1.1 界面设计5.1.2 算法设计在“更新”按钮的 Click事件代码中编写代码,采用 ADO.Net技术实现数据库的访问,在数据库的 book表中查询图书信息记录,用 SqlDataReader对象读取,然后显示出所有的图书信息记录。在“查询”按钮的 Click事件代码中编写代码,采用 ADO.Net技术实现数据库的访问,在数据库的 book表中查询图书信息记录,用 SqlDataReader对象读取,然后显示出查询的图书信息

19、记录。在“借阅图书”按钮的 Click事件代码中编写代码,将读者要借的图书信息与读者的信息绑定写入数据库借还书表(jhbook 表)。5.1.3 代码实现usingSystem;Using System.Collections.Generic; Using System.ComponentModel; Using System.Data; Using System.Drawing; Using System.Text; Using System.Windows.Forms; Using System.Data.SqlClient; Namespace WindowsApplication1 P

20、ublic partial class 借阅图书: Form Public 借阅图书() InitializeComponent(); Private void 借阅图书 _Load( object sender, EventArgs e) / TODO: 这行代码将数据加载到表“tsglxtDataSet.JHbook”中。您可以根据需要移动或移除它 this.jHbookTableAdapter.Fill(this .tsglxtDataSet.JHbook); / TODO: 这行代码将数据加载到表“tsglxtDataSet.book”中。您可以根据需要移动或移除它。this.book

21、TableAdapter.Fill(this.tsglxtDataSet.book); / TODO: 这行代码将数据加载到表“tsglxtDataSet.users”中。您可以根据需要移动或移除它。this.usersTableAdapter.Fill(this.tsglxtDataSet.users); SqlConnection con = new SqlConnection(“Data Source=.;Initial Catalog=tsglxt;Integrated Security=True“); DataSet ds = new DataSet(); SqlDataAdapte

22、r ada = new SqlDataAdapter();BindingSource bs = new BindingSource();Private void button1_Click(object sender, EventArgs e) String sql = “select * from users where user_id=“+ textBox2.Text.Trim() + “;ada.SelectCommand = new SqlCommand (sql, con); dataGridView1.DataSource = null; ada.Fill(ds, “users“)

23、; bs.DataSource = ds; bs.DataMember = “users“; if(bs.Count = 0) MessageBox .Show(“表中无此读者“); elsedataGridView1.DataSource = bs; Private void button2_Click(object sender, EventArgs e) String sql = “select * from users where user_name=“+ textBox1.Text Trim() + “; ada.SelectCommand = new SqlCommand (sql

24、, con); dataGridView1.DataSource = null; ada.Fill(ds, “users“); bs.DataSource = ds; bs.DataMember = “users“; If (bs.Count = 0) MessageBox.Show(“表中无此读者“); else dataGridView1.DataSource = bs; Private void button3_Click(object sender, EventArgs e) String sql = “select * from book where book_id=“+ textB

25、ox3.Text.Trm() + “; ada.SelectCommand = new SqlCommand(sql, con); dataGridView2.DataSource = null; ada.Fill(ds, “book“); bs.DataSource = ds; bs.DataMember = “book“; if(bs.Count = 0) MessageBox.Show(“表中无此图书“); else dataGridView2.DataSource = bs; Private void button4_Click(object sender, EventArgs e)

26、String sql = “select * from book where class=“+ comboBox1.SelectedItem.ToString() + “; ada.SelectCommand = new SqlCommand(sql, con); ada.SelectCommand.Parameters.AddWithValue(“class“, comboBox1.Text); dataGridView2.DataSource = null; ada.Fill(ds, “book“); bs.DataSource = ds; bs.DataMember = “book“;

27、if(bs.Count = 0) MessageBox.Show(“表中无类别“); ElsedataGridView2.DataSource = bs; Private void button5_Click( object sender, EventArgs e) String sql = “select * from users“; ada.SelectCommand = new SqlCommand(sql, con); ds.Clear(); ada.Fill(ds, “users“); bs.DataSource = ds; bs.DataMember = “users“; data

28、GridView1.DataSource = bs; Private void button6_Click(object sender, EventArgs e) String sql = “select * from book“; ada.SelectCommand = new SqlCommand(sql, con); ds.Clear(); ada.Fill(ds, “book“); bs.DataSource = ds; bs.DataMember = “book“; dataGridView1.DataSource = bs; Private void button7_Click(o

29、bject sender, EventArgs e) String sql = “select kjsl-yjsl from borrow_reader where user_id=“+ textBox1.Text.Trim() + “; SqlCommand cmd = new SqlCommand (sql, con); Int a = cmd.ExecuteScalar(); If (a=0) MessageBox .Show(“借书数量已满,请还书后再借!“); return; string_sql = “select kcsl-jcsl from book where book_id

30、=“+ textBox3.Text.Trim() + “; SqlCommand cmd = new SqlCommand(_sql, con); Int b = cmd.ExecuteScalar(); if(b=0) MessageBox.Show(“此书已全部被借出,不能借阅“); else string sql = “insert into jhbook(user_id, user_name, book_id, jstime)Values(user_id,user_name, book_id, jstime)“; SqlCommand sqlcmd = new SqlCommand(s

31、ql, con); sqlcmd.Parameters.AddWithValue(“user_id“, textBox1.Text); sqlcmd.Parameters.AddWithValue(“user_name“, textBox2.Text);sqlcmd.Parameters.AddWithValue(“book_id“, textBox3.Text); sqlcmd.Parameters.AddWithValue(“jstime“, dateTimePicker1.Value); string sqlstr=“update borrow_reader set Yjsl=Yjsl+

32、1 where user_id= user_id “; string_sql=“update book set jcsl=jcsl+1 where book_id= book_id“; SqlCommand cmd = new SqlCommand (sqlstr, con); SqlCommand ddd = new SqlCommand(_sql,con); cmd.Parameters.AddWithValue(“user_id“, textBox1.Text); ddd.Parameters.AddWithValue(“book_id“, textBox3.Text);try con.

33、Open(); sqlcmd.ExecuteNonQuery(); cmd.ExecuteNonQuery(); ddd.ExecuteNonQuery(); con.Close(); MessageBox.Show(“借阅成功“); catch(DataException ex) MessageBox .Show(ex.Message); finally dataGridView3.DataSource = bs; Private void button8_Click(object sender, EventArgs e) this.Close(); Private void button9

34、_Click(object sender, EventArgs e) String sql = “select * from book where book_name=“+ textBox4.Text.Trim() + “; ada.SelectCommand = new SqlCommand (sql, con); dataGridView2.DataSource = null; ada.Fill(ds, “book“); bs.DataSource = ds; bs.DataMember = “book“; If (bs.Count = 0) MessageBox .Show(“表中无此书

35、籍“);else dataGridView2.DataSource = bs; 5.2 归还图书模块设计5.2.1 界面设计5.2.2 算法设计在“更新”按钮的 Click事件代码中编写代码,采用 ADO.Net技术实现数据库的访问,在数据库的 jhbook表中查询读者信息记录,用SqlDataReader对象读取,然后显示出所有的读者借阅图书信息记录。在“查询”按钮的 Click事件代码中编写代码,采用 ADO.Net技术实现数据库的访问,在数据库的 jhbook表中查询读者信息记录,用SqlDataReader对象读取,然后显示出查询的读者借阅图书信息记录。在“归还图书”按钮的 Click

36、事件代码中编写代码,将读者要借的图书信息与读者的信息绑定写入数据库借阅图书表(jHbook 表)中。5.2.3 代码实现Using System; Using System.Collections.Generic; Using System.ComponentModel; Using System.Data; Using System.Drawing; Using System.Text; Using System.Windows.Forms; Using System.Data.SqlClient;Namespace WindowsApplication1 Public partial cl

37、ass 归还图书 : Form Public 归还图书() InitializeComponent(); Private void 归还图书_Load(object sender, EventArgs e) / TODO: 这行代码将数据加载到表“tsglxtDataSet.borrower_reader”中。您可以根据需要移动或移除它。this.borrower_readerTableAdapter.Fill(this.tsglxtDataSet.borrower_reader);/ TODO: 这行代码将数据加载到表“tsglxtDataSet.book”中。您可以根据需要移动或移除它。t

38、his.bookTableAdapter.Fill(this.tsglxtDataSet.book); / TODO: 这行代码将数据加载到表“tsglxtDataSet.JHbook”中。您可以根据需要移动或移除它。this.jHbookTableAdapter.Fill(this.tsglxtDataSet.JHbook); SqlConnection con = new SqlConnection(“Data Source=.;Initial Catalog=tsglxt;Integrated Security=True“); DataSet ds = new DataSet(); Sq

39、lDataAdapter ada = new SqlDataAdapter(); BindingSource bs = new BindingSource(); Private void button1_Click(object sender, EventArgs e) String sql = “select * from jhbook where user_id=“+ textBox2.Text.Trim() + “; ada.SelectCommand = new SqlCommand(sql, con); dataGridView1.DataSource = null; ada.Fil

40、l(ds, “jhbook“); bs.DataSource = ds; bs.DataMember = “jhbook“; if (bs.Count = 0) MessageBox.Show(“表中无此读者“); else dataGridView1.DataSource = bs; Private void button2_Click(object sender, EventArgs e) string sql = “select * from jhbook where user_name=“ + textBox1.Text.Trim() + “; ada.SelectCommand = new SqlCommand (sql, con); dataGridView1.DataSource = null;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报