图书管理系统论文设计课程设计报告.doc

上传人:小小飞 文档编号:3918166 上传时间:2019-10-10 格式:DOC 页数:25 大小:464KB
返回 下载 相关 举报
图书管理系统论文设计课程设计报告.doc_第1页
第1页 / 共25页
图书管理系统论文设计课程设计报告.doc_第2页
第2页 / 共25页
图书管理系统论文设计课程设计报告.doc_第3页
第3页 / 共25页
图书管理系统论文设计课程设计报告.doc_第4页
第4页 / 共25页
图书管理系统论文设计课程设计报告.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《图书管理系统论文设计课程设计报告.doc》由会员分享,可在线阅读,更多相关《图书管理系统论文设计课程设计报告.doc(25页珍藏版)》请在三一文库上搜索。

1、图书管理系统课程设计报告 2015年 12月 28日目 录第一章 绪论31.1 图书管理系统概述31.2 图书管理的目的和意义3第二章 系统相关技术42.1 C# 概述42.2 Sql 数据库概述5第三章 系统分析63.1 图书管理系统设计63.2 用户的功能需求分析63.3 系统运作流程6第四章 系统的实现84.1 数据库设计84.2 C#的设计84.2.1 系统登录界面84.2.2 查询界面134.2.3 借阅界面184.2.4 归还界面20第五章 总结24第一章 绪论1.1 图书管理系统概述随着社会的发展,人们生活水平的提高,物质文化的发展已经远远满足不了人们的需求,精神文明有了飞速的发

2、展,因此图书事业的发展就成为精神文明进步的一个动力。在迈入二十一世纪的今天,对图书管理显得极其重要,合理的管理不仅反映一个国家的科技水平,而且影响人们对知识掌握的速度和质量。在知识经济到来的今天,用计算机控制图书馆的工作由自动化系统运行而完成。这不仅省了人力,而且还提高了工作效率和服务质量,而且还加速了图书的流通。1.2 图书管理的目的和意义随着各高等院校的规模不断扩大,图书馆的藏书、管理人员、读者的数量也越来越多,图书管理涉及到大量的数据处理,传统的人工系统已经不能完成庞大的数据处理,因为图书的情况是随时改变的,因此必须对图书进行动态的管理,而这对于管理人员来说是一件比较复杂的事情。因此,为

3、方便对图书馆书籍、读者资料、借还书等进行高效的管理。提高业务流程效率,让管理员从繁重的工作中解脱出来,使管理员在使用一个软件以后能极其容易地对所有图书进行管理,并且准确无误,轻松自如。因此开发一个图书管理系统是当务之急,也是本论文选题的重要意义和研究宗旨。总之,建立图书馆的计算机自动化管理系统,不但可以大大提高图书流通率,而且推动了社会文化生活的进步。第二章 系统相关技术2.1 C# 概述C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C

4、#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司 .NET windows网络框架的主角。C#是一种安全的、稳定的、简单的、优雅的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言

5、。C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。C#使得C+程序员可以高效的开发程序,且因可调用由 C/C+ 编写的本机原生函数,因此绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。2.2 Sql 数据库概述 SQL Server 是一个关系数据库管理系统。它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/

6、2版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UN操作系统上的应用。SQL Server 2000 是Microsoft 公司推出的SQL Server数据库管理系统,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft

7、Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。第三章 系统分析3.1 图书管理系统设计任何一个软件的开始都是进行系统的需求分析。需求分析要根据用户的功能要求、界面以及其他要求进行分析,当然在此需求分析是根据我自己对图书管理系统的基本了解以及系统所需要的基本功能来进行的。其次制作的各个流程图才是真正的系统设计,是在完成需求分析的基础上进行的。3.2 用户的功能需求分析 图书管理系统需要的功能分析如下:管理系统具有多个用户,用户可以使用不同的用户名和密码进入管理系统,并可以修改自己的密码;(一) 进入系统后可以登录该系统

8、;(二) 在系统中可以对数据库进行简单的操作;(三) 最基本的功能还应具有可以编辑图书录入、删除图书资料。图书分类信息的添加、修改、删除和查询。此功能为图书的分类管理提供依据。(四) 图书基本信息的添加、修改、删除和查询。3.3 系统运作流程该系统涉及到用户以及管理员,在两者之间进行一系列的操作。管理员对图书进行录入、删除等操作,和用户之间的交流则是进行借阅图书操作。运作流程图如图:程序关闭信息还原统计信息更改数据库修改程序关闭图书归还图书借阅图书查找用户登录 图书管理系统据书名查询据作者查询据编号查询用户登录第四章 系统的实现4.1 数据库设计库名:libraryDB表名:Administr

9、ator,bookAdministrator表 Book表 4.2 C#的设计4.2.1 系统登录界面函数名称功能private void button2_Click(object sender, EventArgs e)取消按钮操作public bool CheckInput()非空验证public bool CheckUser(ref string message检查用户是否存在dbhelper.CloseConnection();关闭数据库连接private void button1_Click(object sender, EventArgs e)登陆按钮操作private void

10、Form1_FormClosing(object sender, FormClosingEventArgs e)关闭窗口public void OpenConnection()打开数据库public void CloseConnection()关闭数据库using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Linq;using System.T

11、ext;using System.Threading.Tasks;using System.Windows.Forms;namespace Library public partial class loginMenu : Form public loginMenu() InitializeComponent(); this.FormClosing += new FormClosingEventHandler(this.Form1_FormClosing); /取消按钮操作 private void button2_Click(object sender, EventArgs e) Dialog

12、Result result = MessageBox.Show(确定取消登陆吗?, 操作提示, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result = DialogResult.Yes) Application.Exit(); /非空验证 public bool CheckInput() if (this.txtUserName.Text.Trim().Equals(string.Empty) MessageBox.Show(请输入用户名, 输入提示, MessageBoxButtons.OK, MessageBoxIco

13、n.Information); this.txtUserName.Focus(); return false; else if (this.txtPwd.Text.Trim().Equals(string.Empty) MessageBox.Show(请输入密码, 输入提示, MessageBoxButtons.OK, MessageBoxIcon.Information); this.txtPwd.Focus(); return false; else return true; /检查用户是否存在 public bool CheckUser(ref string message) bool

14、isValidUser = false; string userName = txtUserName.Text.Trim(); string userPwd = txtPwd.Text.Trim(); StringBuilder sb = new StringBuilder();/查询用的SQL语句 sb.AppendFormat(SELECT COUNT(*) FROM Aministrator WHERE Admin = 0 and Psw = 1, userName, userPwd); int count = 0; DBHelper dbhelper = new DBHelper();

15、 try SqlCommand command = new SqlCommand(sb.ToString(), dbhelper.Connection); dbhelper.OpenConnection(); count = (int)command.ExecuteScalar(); if (count 0) isValidUser = true; else MessageBox.Show(用户名或密码错误,请重新输入, 输入提示, MessageBoxButtons.OK, MessageBoxIcon.Information); message = 用户名不存在; isValidUser

16、= false; catch (Exception ex) message = 系统发生错误,请稍后再试!; isValidUser = false; finally /关闭数据库连接 dbhelper.CloseConnection(); return isValidUser; /登陆按钮操作 private void button1_Click(object sender, EventArgs e) if (CheckInput() string message = string.Empty; /显示选择菜单 if (CheckUser(ref message) searchBook fr

17、msearch = new searchBook(); frmsearch.Show(); this.Hide(); /关闭窗口 private void Form1_FormClosing(object sender, FormClosingEventArgs e) Application.Exit(); /数据库打开关闭操作 public class DBHelper private string connString = Data Source=.;Initial Catalog=libraryDB;Integrated Security=True; private SqlConnect

18、ion connection; public SqlConnection Connection get if (connection = null) connection = new SqlConnection(connString); return connection; /打开数据库 public void OpenConnection() if (Connection.State = ConnectionState.Closed) Connection.Open(); else if (Connection.State = ConnectionState.Broken) Connecti

19、on.Close(); Connection.Open(); /关闭数据库 public void CloseConnection() if (Connection.State = ConnectionState.Open | Connection.State = ConnectionState.Broken) Connection.Close(); 4.2.2 查询界面函数名称功能FillListView();调用搜索按钮函数private void FillListView()搜索按钮操作private void Form1_FormClosing(object sender, FormC

20、losingEventArgs e)关闭窗口private void button1_Click(object sender, EventArgs e)返回按钮private void 借阅ToolStripMenuItem_Click(object sender, EventArgs e)右键菜单借阅操作private void 归还ToolStripMenuItem_Click(object sender, EventArgs e)右键菜单归还操作using System;using System.Collections.Generic;using System.ComponentMode

21、l;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Data.SqlClient;namespace Library public partial class searchBook : Form public searchBook() InitializeComponent(); this.FormClosing += new FormClosingEven

22、tHandler(this.Form1_FormClosing); private void btnSearch_Click(object sender, EventArgs e) /调用搜索按钮函数 FillListView(); /搜索按钮操作 private void FillListView() if (listView1.Items.Count 0) listView1.Items.Clear(); StringBuilder sql = new StringBuilder(); if (comboBox1.Text.Equals(作者) sql.AppendFormat(selec

23、t * from Book where author like% + textBox1.Text + %); else if (comboBox1.Text.Equals(书名) sql.AppendFormat(select * from Book where bookName like% + textBox1.Text + %); else if (comboBox1.Text.Equals(编号) sql.AppendFormat(select * from Book where bookNo like% + textBox1.Text + %); DBHelper dbhelper =

24、 new DBHelper(); try SqlCommand command = new SqlCommand(sql.ToString(), dbhelper.Connection); dbhelper.OpenConnection(); SqlDataReader reader = command.ExecuteReader(); if (!reader.HasRows) MessageBox.Show(没有要查找的记录!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); else while (reader.Read() s

25、tring bookNo = readerbookNo.ToString(); string bookName = readerbookName.ToString(); string author = readerauthor.ToString().Trim(); string bookstate = readerbookstate.ToString(); ; string lendTime = readerlendTime.ToString(); string returnTime = readerreturnTime.ToString(); string readers = readerr

26、eaders.ToString(); string bookcount = readerbookcount.ToString(); ListViewItem item = new ListViewItem(bookName); item.SubItems.Add(bookNo); item.SubItems.Add(author); item.SubItems.Add(bookstate); item.SubItems.Add(lendTime); item.SubItems.Add(returnTime); item.SubItems.Add(bookcount); item.SubItem

27、s.Add(readers); listView1.Items.Add(item); reader.Close(); catch (Exception ex) MessageBox.Show(请选择查找方式, 提示, MessageBoxButtons.OK, MessageBoxIcon.Error); finally dbhelper.CloseConnection(); /关闭窗口 private void Form1_FormClosing(object sender, FormClosingEventArgs e) Application.Exit(); /返回按钮 private

28、void button1_Click(object sender, EventArgs e) loginMenu frmlog = new loginMenu(); frmlog.Show(); this.Hide(); private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) /右键菜单借阅操作 private void 借阅ToolStripMenuItem_Click(object sender, EventArgs e) if (this.listView1.Items.Count 0) if (t

29、his.listView1.SelectedItems0.SubItems6.Text.Equals(0) MessageBox.Show(这本书已被借阅完毕,无法借取, 警告, MessageBoxButtons.OK, MessageBoxIcon.Error); else borrowbook frmborrow = new borrowbook(); frmborrow.Show(); frmborrow.textBox1.Text = this.listView1.SelectedItems0.SubItems0.Text; frmborrow.textBox2.Text = thi

30、s.listView1.SelectedItems0.SubItems1.Text; frmborrow.textBox3.Text = this.listView1.SelectedItems0.SubItems2.Text; frmborrow.textBox4.Text = this.listView1.SelectedItems0.SubItems4.Text; frmborrow.textBox5.Text = this.listView1.SelectedItems0.SubItems5.Text; /右键菜单归还操作 private void 归还ToolStripMenuIte

31、m_Click(object sender, EventArgs e) if (this.listView1.Items.Count = 0) MessageBox.Show(这本书不存在, 警告, MessageBoxButtons.OK, MessageBoxIcon.Error); else returnbook frmreturn = new returnbook(); frmreturn.Show(); frmreturn.textBox1.Text = this.listView1.SelectedItems0.SubItems0.Text; frmreturn.textBox2.

32、Text = this.listView1.SelectedItems0.SubItems1.Text; frmreturn.textBox3.Text = this.listView1.SelectedItems0.SubItems2.Text; frmreturn.textBox4.Text = this.listView1.SelectedItems0.SubItems7.Text; 4.2.3 借阅界面函数名称功能private void lendbook_Click(object sender, EventArgs e)借阅书籍按钮private bool borrowBooks()

33、借阅书籍函数private void button2_Click(object sender, EventArgs e)窗口关闭函数using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace Library public partial class borrowbook : Form public borrowbook() InitializeComponent(); private void label1_Click(object sender, EventArgs e) /借阅书籍按钮 private void lendbook_Click(object sender, EventArgs e) borrowBooks(); MessageBox.Show(已借阅, 成功, MessageBoxButtons.OK, Messa

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1