09402304 苏丹丹 基于WinForm的图书馆管理系统设计
- 格式:pdf
- 大小:849.00 KB
- 文档页数:20
Delphi课程设计(图书信息管理系统)学院:数计学院专业:08 信管学号:080304041姓名:林燕玉目录(图书信息管理系统)1.概述………………………..3.2 需求分析………………………..3.3.系统模块分析图………………………..3.4.数据库设计………………………..4.4.1图书信息表…………………………….4.4.2读者信息表…………………………….5.4.3图书借阅表…………………………….6.4.4用户信息表…………………………….7.5.系统模块设计………………………..7.5.1主窗体的创建…………………………….7.5.2数据模块窗体设计…………………………….11.5.3登录窗体设计……………………………11.5.4 用户密码窗体设计……………………………13.5.5 添加用户窗体设计…………………………..14.5.6 修改密码窗体设计…………………………..16.5.7 信息查询窗体设计…………………………..17.5.8 图书管理窗体设计………………………….. 23.5.9 读者管理窗体设计…………………………..27.5.10 借阅管理窗体设计…………………………..31.5.11 规章制度窗体设计…………………………..36.5.12 图书馆背景窗体设计…………………………..37.6.本系统各个功能的运行…………………………..37.7.总体设计方案的分析…………………………..38.8.出现的问题及解决方法…………………………..38.9.小结…………………………..39.一、概述:本系统是介绍一个用delphi为开发工具基于ADO的图书馆图书管理系统。
图书管理系是以数据库为支撑的应用程序,提出了权限管理模块的具体实现方法,并完成了相关模块设计。
其功能包括用户管理、图书或读者或借阅查询、图书或读者管理以及图书借还等。
本系统使用Access数据库存储图书管理的基本信息。
基于VC++的图书管理系统的设计与实现芦艳芳(安阳工学院河南安阳 455000)摘 要:对图书馆管理信息系统进行详细的分析和设计,而且还对系统的安全性、数据共享性、可移植性等内容进行论述。
关键词:图书管理系统;数据库系统中图分类号:G25 文献标识码:A 文章编号:1671-7597(2010)0820092-02随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,它借还子系统:主要由图书管理员进行借书还书记录的登记和清除。
的规模比以往任何时候都大得多,图书管理部门需要方便而有效的方式来管理子系统:由图书管理员和超级管理员管理系统,分别是由图书管管理自己的书籍。
传统人工的管理方式存在着许多缺点如效率低、保密性理员管理图书(包括图书信息的修改,新图书的增加,旧图书的删除),差、容易出错、不易查找等,为此图书管理系统便应运而生,它使图书的管理读者信息,管理管理员登录帐户,管理逾期未还图。
管理、维护、借还等操作变得更为简单方便,在网上便可以详细地了解图书馆藏书信息、借阅情况、归还情况、缺书登记等,极大地提高资源的高效性和安全性。
图书馆管理信息系统(LMIS),也称为图书馆自动化集成系统,它是图书馆进行现代化信息管理和信息服务的基础,是人们快捷准确获取图书资源,并对馆藏资源进行高效管理的强有力保证。
1 系统关键技术系统所用的开发工具是Visual C++6.0,它是Windows环境中最主要的应用开发系统之一。
VisualC++不仅是C++的集成开发环境,而且与Win32紧密相连,所以利用Visual C++可以完成各种应用程序的开发;另外VisualC++强大的调试功能也为大型复杂软件的开发提供了有效的排错手段。
Visual C++是一个很好的可视化编程工具,使用Visual C++环境来开发MFC库具有支持两种类型数据库的类:开放数据库连接(ODBC)封装了大多数数据库厂商支持ODBCAPI,如果应用程序使用了MFC的ODBC类,它就可以支持任何支持ODBC标准的数据库管理系统(DBMS)。
图书馆书籍管理系统设计与实现随着图书馆藏书量的不断增加,传统的书籍管理系统已经无法满足读者的需求。
因此,设计和实现一个图书馆书籍管理系统变得尤为重要。
本文将介绍一种基于计算机技术的图书馆书籍管理系统设计与实现方法。
在设计图书馆书籍管理系统之前,首先需要了解系统的需求。
系统的基本功能应该包括:书籍信息录入、书籍借阅管理、读者信息管理、书籍分类管理等。
为了管理大量的书籍信息,我们需要建立一个完善的数据库。
其中应该包括书籍表、作者表、出版社表、借阅表等。
每个表都应该有其独特的信息和关联性。
本系统采用C/S架构,客户端负责提供用户界面和数据处理,服务器端负责数据存储和业务逻辑处理。
本系统主要包括以下功能模块:(1)书籍信息录入模块:该模块应该支持多种方式录入书籍信息,包括书籍名称、作者、出版社、出版时间、简介等。
(2)书籍借阅管理模块:该模块应该支持读者借阅书籍、归还书籍、续借书籍等功能,同时能够计算读者的借阅时长和应缴纳的滞纳金。
(3)读者信息管理模块:该模块应该能够录入读者信息、删除读者信息、修改读者信息等。
(4)书籍分类管理模块:该模块应该支持对书籍进行分类,可以根据学科或者类型进行分类,方便读者查找和管理。
(5)系统用户管理模块:该模块应该能够添加、删除系统用户,并给不同的用户分配不同的权限。
前端界面应该简洁明了,易于操作。
读者可以输入关键字搜索书籍,也可以查看书籍的详细信息。
前端界面还应该包括读者个人信息以及借阅记录的查看和编辑功能。
后端服务器使用常见的数据库管理系统,如MySQL或PostgreSQL进行数据的存储和管理。
通过建立数据表,保存书籍信息、读者信息和借阅记录等相关信息。
服务器端运行的程序可以使用Python或Java 等编程语言进行编写,与数据库进行交互,实现数据的增删改查等操作。
在系统实现后,我们需要对系统的各个功能进行测试,确保数据的准确性和系统的稳定性。
同时,我们还应对系统的性能进行测试,以确保系统可以处理大量的用户同时在线操作。
西南林学院
本科毕业论文(设计)开题报告
论文题目基于的图书馆管理系统设计与实现
专业名称信息与计算科学
年级2009级
学生学号20090152021
学生姓名王文武
指导教师(职称) 张健(副教授)
填表时间2013 年1 月 6 日
教务处制
填表说明
一、开题报告各项内容要实事求是,逐条认真填写,表达要明确、严谨。
外来语应用中文和英文同时表达,第一次出现的缩写词,须注出全称。
二、开题报告需用计算机打印,一律为A4开本,于左侧装订成册。
各栏空
格不够时,请自行加页。
三、开题报告需在第八学期开学之前完成。
基于技术的图书馆管理系统的设计与实现作者:王超来源:《都市家教·下半月》2015年第09期【摘要】针对图书馆管理系统的运行需求,研发了一套基于技术的B/S结构图书馆管理系统。
本系统主要论述了系统设置、读者管理、图书管理、图书借还、系统查询模块的设计与功能实现,使用技术访问数据库,实现图书馆管理的信息化。
【关键词】;B/S结构;图书馆管理在互联网发展普及之前,图书馆是最有效的面向社会大众提供各种信息服务的职能部门。
时至今日,图书馆仍然是社会民众及搞定呢过学校学生获取知识技能的重要途径。
传统的图书馆管理模式主要依赖人工进行管理,这种传统的人工流程存在各种不足。
首先,借书、还书两个阶段依靠借书卡片完成,借换流程繁琐,效率低下;其次,图书馆处理业务的能力有限,能够服务的人数是有相当限制的。
随着基于网络的现代信息技术的快速发展与普及,传统的人工业务流程进行信息化已经成为一种需求上的必然。
“数字化图书馆”早就成为了传统图书馆突破困境,实现高效服务的必然选择。
本文涉及到的图书馆管理系统采用了微软公司最新的技术,基于B/S结构,并调用数据库中的数据,最终实现图书馆管理的信息化。
一、网站的系统设计1.开发工具的选择微软公司推出了ASP语言的升级版本,这门语言也是微软公司.NET战略的重要组成部分,是专门用于开发网上应用程序的。
作为微软公司与Sun公司竞争的重要产品,进行了全方位的提升而不能仅仅看成是对ASP技术的简单升级,它引入了统一Web开发模型的概念,包括了软件开发人员进Web应用开发所需要的各种服务。
基于.NET 的环境运行,并且是已经编译过的。
可以使用、C#、及等.NET兼容语言开发应用程序。
更为重要的是,的应用程序可以使用.NET框架技术。
软件开发人员可以通过.NET框架获取技术上的优势,CLR公共语言运行库等.NET技术都是同时可以被继承的。
2.系统目标设计图书馆的管理系统,其日常管理工作以及图书借换流程都是固定的,必须对此进行成分调研,最终确定系统的设计目标。
C# winform简易图书管理系统设计代码(只实现增删查改的操作)using System;using System.Data;using System.Windows.Forms;using System.Data.SqlClient;namespace librarian{public partial class Form1 : Form{public Form1(){InitializeComponent();}//声明参数string conStr;SqlConnection conn;//声明数据库连接方法体private void DBConnect(){conStr = "server=localhost;database=DBbook;UID=sa;password=dataadmin"; conn = new SqlConnection(conStr);}//图书查找功能private void butSelect_Click(object sender, EventArgs e){DBConnect();if (txtID.Text != ""){ //用图书编号查找图书string cmdStr = "select * from TbBookMessage where bookID='" + txtID.Text + "'";SqlCommand cmd = new SqlCommand(cmdStr, conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = cmd; //将sql执行语句设置为已实例化的SqlDataAdapter查询命令DataSet ds = new DataSet();da.Fill(ds); //把数据填充到"临时仓库"DataSet if (ds.Tables[0].Rows.Count > 0){ // 临时仓库表中存在数据时,将对应字段填充到textbox中txtID.Text = ds.Tables[0].Rows[0]["bookID"].ToString();txtName.Text = ds.Tables[0].Rows[0]["bookName"].ToString();txtMessage.Text = ds.Tables[0].Rows[0]["bookMessage"].ToString(); }else{MessageBox.Show("您要找的图书不存在或已删除", "提示");txtID.Clear(); //清空txtID文本框txtID.Focus(); //设为焦点}}else if (txtID.Text == "" && txtName.Text != ""){ //用图书名称查找图书string cmdStr = "select * from TbBookMessage where bookName='" + txtName.Text + "'";SqlCommand cmd = new SqlCommand(cmdStr, conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = cmd;DataSet ds = new DataSet();da.Fill(ds);if (ds.Tables[0].Rows.Count > 0){txtID.Text = ds.Tables[0].Rows[0]["bookID"].ToString();txtName.Text = ds.Tables[0].Rows[0]["bookName"].ToString();txtMessage.Text = ds.Tables[0].Rows[0]["bookMessage"].ToString(); }else{MessageBox.Show("您要找的图书不存在或已删除", "提示");txtName.Clear();txtName.Focus();}}else{MessageBox.Show("请输入图书编号或名称", "提示");txtID.Focus();}}//图书修改功能private void butUpdate_Click(object sender, EventArgs e){conn.Open();if (txtID.Text != ""){if (MessageBox.Show("确定要修改图书信息吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK){ //二次确认string cmdStr = "update TbBookMessage set bookName='" + txtName.Text + "',bookMessage='" + txtMessage.Text + "'where bookID='" + txtID.Text + "'";SqlCommand cmd = new SqlCommand(cmdStr, conn);if (cmd.ExecuteNonQuery() > 0){ //受影响行数大于0,则说明sql语句执行成功MessageBox.Show("图书信息修改成功", "提示");}else{MessageBox.Show("与服务器断开连接", "操作失败");}}}else{MessageBox.Show("请输入要修改的图书编号", "提示");txtID.Focus();}conn.Close();}//图书删除功能private void butDelete_Click(object sender, EventArgs e){if (txtID.Text != ""){if (MessageBox.Show("确认要删除此图书吗?", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK){ //二次确认conn.Open();string cmdStr = "delete from TbBookMessage where bookID='" + txtID.Text + "'";SqlCommand cmd = new SqlCommand(cmdStr, conn);if (cmd.ExecuteNonQuery() > 0){MessageBox.Show("编号 " + txtID.Text + " 的图书已删除", "提示");txtID.Clear();txtName.Clear();txtMessage.Clear();txtID.Focus();}else{MessageBox.Show("与服务器断开连接", "操作失败");}conn.Close();}}else{MessageBox.Show("请输入要删除的图书编号", "提示");txtID.Focus();}}//图书添加功能private void butInset_Click(object sender, EventArgs e){if (txtName.Text == "" || txtName.Text == " "){MessageBox.Show("请输入图书名称", "提示");txtName.Focus();}else{DBConnect();conn.Open();string cmdStr = "select * from TbBookMessage";SqlCommand cmdReader = new SqlCommand(cmdStr, conn);SqlDataReader reader = cmdReader.ExecuteReader();while (reader.Read()){if (txtName.Text == reader["bookName"].ToString().Trim()){MessageBox.Show("你要添加的图书已存在", "提示");txtID.Clear();txtName.Clear();txtName.Focus();conn.Close();return;}}reader.Close();cmdStr = "insert into TbBookMessage(bookName,bookMessage)values ('" + txtName.Text + "','" + txtMessage.Text + "')";SqlCommand cmd = new SqlCommand(cmdStr, conn);if (cmd.ExecuteNonQuery() > 0){MessageBox.Show("新添加图书成功,点击查找查看最新图书", "提示"); }else{MessageBox.Show("与服务器断开连接", "操作失败");}conn.Close();}}//清空文本框private void butClear_Click_1(object sender, EventArgs e){txtID.Clear();txtName.Clear();txtMessage.Clear();txtID.Focus();}//将填充到文本框中的空格转换换成空private void txtName_TextChanged(object sender, EventArgs e){txtName.Text = txtName.Text.Replace(" ", "");}//同上private void txtMessage_TextChanged(object sender, EventArgs e){txtMessage.Text = txtMessage.Text.Replace(" ", "");}//限制文本框键盘输入空格private void txtName_KeyPress(object sender, KeyPressEventArgs e){if (" ".IndexOf(e.KeyChar) != -1){e.Handled = true;}}//同上private void txtMessage_KeyPress(object sender, KeyPressEventArgs e){if (" ".IndexOf(e.KeyChar) != -1){e.Handled = true;}}//限制文本框只能输入数字//(此处还有个局限,通过复制粘贴的方式仍然可以输入非数字字符)//(可以通过屏蔽快捷键和右键菜单的方式实现限制,因为比较复杂,本人初学暂时不会写) private void txtID_KeyPress(object sender, KeyPressEventArgs e){if(!(char.IsNumber(e.KeyChar))&e.KeyChar!=(char)8){e.Handled = true;}}}}。
本科生毕业设计说明书(毕业论文)题目:基于的高校图书馆管理系统的设计与实现学生姓名:学号:专业:班级:指导教师:基于的高校图书馆管理系统的设计与实现摘要随着社会信息化的快速发展,高校作为教育与科研的先行者,信息资源的快速增长,将体现在高校图书资源的快速增加,由于图书信息变更频繁,图书管理需要对图书信息进行频繁操作,大量数据依靠人力进行管理已经不能满足图书信息的快速增长需求,一种高效自动化的图书管理系统,成为各高校图书馆的迫切需求。
本系统实现了分角色登录功能,用户可以查询、借阅、归还馆藏图书。
系统管理员能实现新书入库、用户管理、馆藏图书、资源、新闻维护等功能。
系统实现与图书相关的各种信息规范化和自动化处理。
本系统采用+SQL Server2008工具开发,开发中前端采用HTML对页面进行UI布局,开发架构采用.NET三层架构。
开发环境Visual Studio 2010。
关键词:.NET平台;B/S结构;图书管理;C#语言The Design and Realization of University Library ManagementSystemAbstractWith social information of fast development, University as education and research of pioneer, information resources of fast growth, will reflected in University books resources of fast increased, due to books information change frequently, books management need on books information for frequently operation, large data relies on human for management has cannot meet books information of fast growth needs, a efficient automation of books management system, became the University Library of urgent needs.The system logged function, users can query and to borrow and return library books. System administrators can achieve new book storage, user management, collection of books, resources, press maintain function. System standardization and automation of information processing associated with the book.The system uses +SQL Server2008, tools development, development of front-end UI using HTML page layouts, development three-tier structure Visual Studio 2010 development environment.Key words: .NET; B/S; Books Management; C#目录摘要 (I)Abstract (II)第一章引言 (1)1.1课题背景与意义 (1)1.2国内应用现状 (1)1.3可行性研究 (1)1.3.1经济、技术、法律方面可行性分析 (1)1.3.2操作的角度分析系统可行性 (2)1.4项目开发计划 (2)1.5工具及相关技术介绍 (4)第二章需求分析 (6)2.1功能描述 (6)2.2系统数据流图 (7)2.3系统数据字典 (9)2.4系统非功能性需求 (11)2.5数据库ER图 (12)第三章总体设计 (19)3.1软件结构 (19)3.1.1软件结构图 (19)3.1.2工程中的资源分类 (19)3.2数据库表的设计 (21)第四章详细设计 (30)4.1用户登录模块 (30)4.1.1用户登录界面 (30)4.1.2用户登录的设计与实现 (30)4.2图书管理模块 (31)4.2.1图书管理界面 (31)4.2.2图书管理的设计与实现 (32)4.3用户管理模块 (34)4.3.1用户管理界面 (34)4.3.2用户管理的设计与实现 (35)4.4图书借阅模块 (38)4.4.1图书借阅界面 (38)4.4.2图书借阅的设计与实现 (38)4.5图书归还模块 (39)4.5.1图书归还界面 (39)4.5.2图书归还的设计与实现 (40)4.7新闻管理模块 (41)4.7.1新闻管理界面 (41)4.7.2新闻管理的设计与实现 (42)4.8资源管理模块 (44)4.8.1资源管理界面 (44)4.8.2资源管理的设计与实现 (44)第五章系统测试 (47)5.1测试步骤与方法 (47)5.1.1测试步骤 (47)5.1.2测试方法 (47)5.2测试结果 (48)第六章总结与展望 (1)参考文献 (2)致谢 (3)第一章引言1.1课题背景与意义随着社会信息化的快速发展,高校图书资源也随着信息化的发展,不断的增长。
目录一、引言1二、系统分析2<一)需求分析2<二)系统功能分析2<三)主要业务流程分析3三、系统设计5<一)系统总体结构设计5<二)系统架构设计7<三)数据库设计9<四)开发及运行环境11四、系统实现11<一)图书管理模块设计11<二)图书借还模块设计16五、系统测试19六、总结19参考文献19基于WinForm的图书馆管理系统设计<电子信息工程系计算机应用技术092班苏丹丹)摘要:随着人类社会的发展,人们对知识的需求不断地增长。
在这种形势下,书籍渐渐地成为人们获得和增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书不仅关系到读者求知的方便程度,也关系到图书馆的发展,因此,就需要对图书馆中的图书进行系统的管理。
图书馆管理系统可以有效的管理图书资源,控制图书的添加,删除,修改,借阅的流程同时还可以对读者进行有效的管理,这样不仅可以提高了图书的检索效率还能减少图书管理员的工作负担。
该图书管理系统是通过可行性分析、需求分析进行设计开发的,其具备方便、快捷的特点,为工作人员建立高效的工作质量、减小出错概率提供了技术保障。
关键字:图书馆管理系统;检索;效率一、引言当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,计算机被广泛应用于信息管理系统的环境。
计算机的最大好处在于利用它能够进行信息管理,使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
本系统就是为了管理好图书馆信息而设计的。
图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的中小型图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。
根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况<如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等都要求用人工计算、手抄进行。
泉州师范学院《程序设计》图书馆管理系统学号:姓名:刘佳学院:数计学院专业:信息管理与信息系统班级: 11级成绩:1 背景与目的《课程设计》是本学期的一本很重要的专业课,本次课程设计就是为了检测本学期对这本书的掌握情况。
本次课程设计也将作为期末考评。
2 开发环境与开发工具网站开发环境:Microsoft Visual Studio 2008集成开发环境。
网站开发语言:C#。
数据库:Microsoft Visual Studio 2008内置数据库。
开发环境运行平台:Windows xp。
3 主要功能主要实现了简单的登录功能、注册功能和基本的增删查改的功能。
4 设计与实现4.1 数据库设计与实现表1 管理员表表2 读者信息表表3图书信息表表4借还表表54.2 系统设计与实现4.2.1构建网站配置文件、全局文件。
配置文件关键代码:<appSettings><add key="conn"value="Data Source=S47;Initial Catalog=LibraryManage;Integrated Security=True"/></appSettings>4.2.2读者页面设计代码public partial class_Default : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){if(!IsPostBack)this.Get_Connection();}protected void Get_Connection(){string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();SqlConnection conn = new SqlConnection(s_conn);string sql = "select * from BookInfo,Reader,lendinfo where reader.readerid =lendinfo.rid and bookinfo.id=lendinfo.bid and readerid='"+Session["readerid"].ToString()+"'";SqlDataAdapter adp = new SqlDataAdapter(sql, conn);DataSet ds = new DataSet();adp.Fill(ds);DataView dv = ds.Tables[0].DefaultView;//dv.Sort = ViewState["sort"].ToString() + " " + ViewState["dire"].ToString();this.GridView1.DataSource = ds;this.GridView1.DataBind();}protected void bindReader(){string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();SqlConnection conn = new SqlConnection(s_conn);string BookID = TextBox1.Text.ToString();string bookSql = "select * from bookinfo where ID='" + BookID + "'";SqlDataAdapter adp = new SqlDataAdapter(bookSql, conn);DataSet ds = new DataSet();adp.Fill(ds);this.GridView2.DataSource = ds;this.GridView2.DataBind();}protected void GridView1_SelectedIndexChanged(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e){this.bindReader();}protected void GridView2_RowUpdated(object sender, GridViewUpdatedEventArgs e){}public void bind(){string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();SqlConnection conn = new SqlConnection(s_conn);string sqlstr = "select * from BookInfo";SqlDataAdapter myda = new SqlDataAdapter(sqlstr, conn);DataSet myds = new DataSet();conn.Open();myda.Fill(myds, "BookInfo");GridView1.DataSource = myds;GridView1.DataKeyNames = new string[] { "id" };GridView1.DataBind();conn.Close();}4.2.3借还管理页面设计代码public partial class LendReturn : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){this.BindGriview();}}protected void BindGriview(){string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();SqlConnection conn = new SqlConnection(s_conn);string sql = "select * from lendinfo";SqlDataAdapter adp = new SqlDataAdapter(sql, conn);DataSet ds = new DataSet();adp.Fill(ds);GridView1.DataSource = ds;GridView1.DataBind();}protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e){string lendinfo = this.GridView1.DataKeys[e.RowIndex].Value.ToString();string delete_sql = "delete from lendinfo where bid='" + lendinfo + "'";//string delete_sql = "delete from bookinfo where id='" + bookinfo + "'";string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();SqlConnection conn = new SqlConnection(s_conn);SqlCommand cmd = new SqlCommand(delete_sql, conn);conn.Open();cmd.ExecuteNonQuery();conn.Close();this.bind();}protected void Button1_Click(object sender, EventArgs e){string BID = this.TextBox1.Text.Trim();string RID = this.TextBox2.Text.Trim();string lenddate = System.DateTime.Now.ToString();string returndate = System.DateTime.Now.AddDays(10).ToString();string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();string sql = "insert into Lendinfo(BID,RID,lenddate,returndate) values('" + BID + "','" + RID + "','" + lenddate + "','" + returndate + "')";SqlConnection conn = new SqlConnection(s_conn);SqlCommand cmd = new SqlCommand(sql, conn);conn.Open();cmd.ExecuteNonQuery();conn.Close();this.bind();Response.Write("借阅成功");this.bind();}public void bind(){string s_conn = System.Configuration.ConfigurationManager.AppSettings["conn"].ToString();SqlConnection conn = new SqlConnection(s_conn);string sqlstr = "select * from lendinfo";SqlDataAdapter myda = new SqlDataAdapter(sqlstr, conn);DataSet myds = new DataSet();conn.Open();myda.Fill(myds, "lendinfo");GridView1.DataSource = myds;GridView1.DataKeyNames = new string[] { "BID" };GridView1.DataBind();conn.Close();}protected void Button2_Click(object sender, EventArgs e){Response.Redirect("manager.aspx");}5 讨论课程设计作业在同学的帮助下勉强完成,网站设计非常简陋,诸多漏洞到现在也没能得到完善解决,但是在一直努力完善的过程中,自己还是学到了很多知识也收获了很多感想,同时弥补了课堂上没有吸收进的知识。
目录一、引言 (1)二、系统分析 (2)(一)需求分析 (2)(二)系统功能分析 (2)(三)主要业务流程分析 (3)三、系统设计 (5)(一)系统总体结构设计 (5)(二)系统架构设计 (7)(三)数据库设计 (9)(四)开发及运行环境 (11)四、系统实现 (11)(一)图书管理模块设计 (11)(二)图书借还模块设计 (16)五、系统测试 (19)六、总结 (19)参考文献 (19)基于WinForm的图书馆管理系统设计(电子信息工程系计算机应用技术092班苏丹丹)摘要:随着人类社会的发展,人们对知识的需求不断地增长。
在这种形势下,书籍渐渐地成为人们获得和增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书不仅关系到读者求知的方便程度,也关系到图书馆的发展,因此,就需要对图书馆中的图书进行系统的管理。
图书馆管理系统可以有效的管理图书资源,控制图书的添加,删除,修改,借阅的流程同时还可以对读者进行有效的管理,这样不仅可以提高了图书的检索效率还能减少图书管理员的工作负担。
该图书管理系统是通过可行性分析、需求分析进行设计开发的,其具备方便、快捷的特点,为工作人员建立高效的工作质量、减小出错概率提供了技术保障。
关键字:图书馆管理系统;检索;效率一、引言当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,计算机被广泛应用于信息管理系统的环境。
计算机的最大好处在于利用它能够进行信息管理,使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
本系统就是为了管理好图书馆信息而设计的。
图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的中小型图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。
根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等都要求用人工计算、手抄进行。
数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。
总的来说,缺乏系统,规范的信息管理手段。
尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。
随着计算机技术的不断发展,计算机应用于各大领域,并给人们的生活带来了极大的便利,图书馆管理信息系统亦是如此。
以往图书馆管理系统由于缺乏适当的软件而给其工作带来了很多不便。
本论文所介绍的图书馆管理系统就是为了使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。
二、系统分析(一)需求分析1、需求分析随着计算机应用技术的普及和国民经济信息化的发展,信息技术与应用环境分离已不再可能,利用计算机实现图书管理已经越来越广泛。
实现计算机处理图书信息,不仅可以使图书管理人员以最少的劳动和最短的时间取得足够的、可靠的、准确的信息,更重要的是可以从简单的数据统计、收集、汇总等重要繁琐的事务中解脱出来。
一个图书馆要生存要发展,必须具备一套与自身实际情况相适应的管理系统,本系统正是通过对某图书馆实际需求进行分析,采用.NET语言作为开发工具而开发出来的单机版图书管理系统。
根据市场的需求,要求系统具有以下功能:(1)系统操作简单,界面友好。
(2)规范、完善的基础信息设置。
支持多人操作,要求有较好的权限分配功能。
(3)能够查看图书馆内所存图书信息并可添加、修改以及删除图书信息。
(4)能够实现对读者档案的查询和编辑管理。
(5)能够进行借阅历史的查询功能。
(6)具有数据备份及数据恢复功能,保证系统数据的安全。
2、可行性分析技术可行性是从前台和后台的开发工具选择上进行分析的。
微软公司开发的.NET远远超越了ASP及其它开发软件,同时也给.Net开发人员提供了更好的灵活性,有效缩短了C#应用程序的开发周期。
而SQL Server是Microsoft公司开发的大型关系数据库管理系统,具有强大的关系数据库创建开发、设计和管理功能。
鉴于我们已经学过Visual Studio2008,熟悉其中的一些最基本的功能设计及编写C#代码的基本操作。
SQL Server2005数据库的基本运用我们也已经掌握。
(二)系统功能分析1、系统功能分析(1)基本功能需求系统开发的总体任务是实现各种信息的系统化、规范化和自动化。
系统功能分析是在系统开发的总体任务的基础上完成。
图书馆管理系统需要完成的功能主要有:1)有关读者类别标准的制定、类别信息的输入,包括类别编号、类别名称、借书数量等。
2)读者类别信息的修改、查询等。
3)读者基本信息的输入,包括读者编号、姓名、类别、性别、所属系部、电话号码等。
4)读者基本信息的查询、修改,包括读者编号、姓名、类别、性别等。
5)图书类别标准的制定、类别信息的输入,包括类别编号、类别名称、关键词等。
6)图书类别信息的查询、修改,包括图书编号、图书名称、关键词等。
7)图书信息的输入,包括图书编号、名称、类别、作者名称、出版社名称、出版日期、价格等。
8)借书和还书信息的输入、查询、修改。
9)读者对图书馆的留言、查看。
上述功能可以用UML用例图来描述,如图1所示:图1系统用例图(三)主要业务流程分析1、业务流程分析根据图书馆管理系统基本功能的分析,我们可以将系统分为:系统管理模块、书籍信息管理模块、借阅信息管理模块、读者信息管理模块等等。
如此要将系统的管理权限分为:管理员与用户。
作为管理员,他们对图书馆管理系统的要求有:(1)能够管理用户信息、图书信息及借还信息,并对它们进行增、删、改、查等操作。
(2)能够对管理员、用户进行密码更改,权限设置。
(3)能够对图书进行高级搜索并查看详细信息。
作为用户,他们对图书馆管理系统的要求有:(1)能够管理用户信息,对主要字段进行修改。
(2)能够对用户进行密码更改。
(3)能够查询图书的详细信息。
(4)可以查看图书的借阅情况。
2、主要业务流程活动图下面是我们通过分析图书管理系统业务流程描绘部分的流程图,如图2、3所示:图2管理员活动图图3用户活动图三、系统设计(一)系统总体结构设计1、项目规划图书管理系统是一款将用户信息、图书信息进行一体化管理的系统。
上章我们对图书管理系统的系统分析,总结出系统功能包括系统设置模块、读者管理模块、图书信息管理模块、图书借还模块、系统查询模块、系统维护模块。
其规划功能模块如下:(1)系统设置模块:权限设置。
(2)读者管理模块:添加、修改、删除读者。
(3)图书管理模块:添加、修改、删除图书信息。
(4)图书借还模块:查询借书人的借还书状态,添加借书信息,删除借书信息。
(5)系统查询模块:可根据不同的条件(书名、类别、出版社、作者等)查询读者需要的图书、读者可根据不同的条件(作者、出版社、索取号、丛书名、类别)查询图书借阅信息。
(6)系统维护模块:更改密码。
2、系统功能结构本系统共分6大部分、11个完整的功能模块。
系统总结构图,如图4所示。
图4功能模块图3、系统模块图登录模块:登录者的身份有管理员和用户,如图5所示:图5登录模块图系统管理模块:分为管理员与用户;管理员拥有所有系统管理的权限,用户根据拥有其管理功能。
如图6、图7所示:图6用户系统管理模块图图7管理员系统管理模块图(二)系统架构设计1、系统登录的设计(1)登录界面设计。
如图8所示:图8登录界面(2)登录情况介绍1)从列表框里输入用户名,此列表框内的用户直接与数据库里用户表相关联。
2)输入密码。
判断该密码与工作人员表中定义的密码是否相符。
如果不正确,提示输入错误的信息。
如果正确,用户登录,进入可操作界面。
3)修改密码:如果发现密码不安全,可以通过“修改密码”对密码进行修改,同时数据库的相应信息也会同时修改。
4)注册用户:普通用户只有通过用户注册才可进入此系统,保证系统的安全性。
2、系统主界面设计(1)管理员系统主界面设计,如图9所示:图9管理员系统主界面(2)系统主体功能简要介绍1)用户管理模块:添加用户、用户维护。
2)图书管理模块:添加图书信息、图书维护、高级搜索。
3)个人信息管理模块:修改密码。
4)返回主页面:跳转到主页面。
(三)数据库设计1、E-R图概念结构设计E-R图,如图10所示:图10程序总体E-R图2、数据库模型数据库模型图,如图11所示:图11数据库模型图3、数据字典本系统采用的是SQL Server2005的数据库,系统数据库名为LibrarySystem。
(1)图书信息表,表名:tb_BookInfo表1图书信息表(2)借书信息表,表名:tb_BorrowBook表2借书信息表(3)读者信息表,表名:tb_DZInfo表3读者信息表(4)登录信息表,表名:tb_UserInfo表4登录信息表(四)开发及运行环境系统开发平台:Microsoft Visual Studio2008。
运行平台:Windows XP/Windows2000/Windows2003。
分辨率:最佳效果1024×768像素。
四、系统实现本系统有如下主要功能模块设计:(一)图书管理模块设计图书管理模块主要用于进行图书信息的管理,通过此模块可以对书刊进行添加、修改、删除、保存等相关功能的操作。
书刊管理模块运行结果如图12所示图12图书管理1.界面设计(1)创建一个界面,命名为MainForm.cs(2)在该页面内添加GridView控件、Button控件、TextBox控件。
(3)重要控件的属性设置如表5所示。
重要控件及属性对象属性值GridView1Align center表5控件属性2.代码设计在“添加”按钮的Click事件中添加如下代码:DB.con.Close();DB.con.Open();string selectstr="SELECT[BookNo],[BookName],[Author],[Publishing],[PubTime],[Price]FROM [LibrarySystem].[dbo].[tb_BookInfo]";SqlCommand mycom=new SqlCommand(selectstr,DB.con);SqlDataReader mydr=mycom.ExecuteReader();lvwBook.Items.Clear();if(!mydr.HasRows){MessageBox.Show("没有查询到数据");}else{while(mydr.Read()){string BookNo=(string)mydr["BookNo"];string Bookname=(string)mydr["Bookname"];string Author=(string)mydr["Author"];string Publishing=(string)mydr["Publishing"];string Pubtime=(string)mydr["Pubtime"].ToString();string Price=(string)mydr["Price"].ToString();ListViewItem lvwItem=new ListViewItem(BookNo);lvwItem.Tag=BookNo;lvwBook.Items.Add(lvwItem);lvwItem.SubItems.AddRange(new string[]{Bookname,Author,Publishing, Pubtime,Price});}}mydr.Close();DB.con.Close();在“修改图书信息”事件中添加如下代码:private void btnUpBook_Click(object sender,EventArgs e){if(lvwBook.SelectedItems.Count==0){MessageBox.Show("您没有输入任何记录!","操作提示",MessageBoxButtons.OK, rmation);}else{UpdateBookForm ubf=new UpdateBookForm();ubf.txtBookNo.Text=lvwBook.SelectedItems[0].SubItems[0].Text.Trim();ubf.txtBookName.Text=lvwBook.SelectedItems[0].SubItems[1].Text.Trim();ubf.txtAuthor.Text=lvwBook.SelectedItems[0].SubItems[2].Text.Trim();ubf.txtPublishing.Text=lvwBook.SelectedItems[0].SubItems[3].Text.Trim();ubf.txtPrice.Text=lvwBook.SelectedItems[0].SubItems[5].Text.Trim();ubf.Show();}}在“删除图书信息”事件中添加如下代码:private void btnDelBook_Click(object sender,EventArgs e){if(lvwBook.SelectedItems.Count==0){MessageBox.Show("您没有选择任何记录","操作提示",MessageBoxButtons.OK, rmation);}else{DialogResult choice=MessageBox.Show("确定要删除该用户吗?","操作警告",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);if(choice==DialogResult.Yes){string sql=string.Format("delete from tb_BookInfo where TSBH={0}", (string)lvwBook.SelectedItems[0].Tag);SqlCommand command=new SqlCommand(sql,DB.con);int result=0;try{DB.con.Open();result=command.ExecuteNonQuery();}catch(Exception exp){MessageBox.Show(exp.Message);}finally{DB.con.Close();}if(result<1){MessageBox.Show("删除失败!","操作结果",MessageBoxButtons.OK, MessageBoxIcon.Exclamation);}else{MessageBox.Show("删除成功!","操作结果",MessageBoxButtons.OK, rmation);DB.con.Open();string selectstr="select*from tb_Book";SqlCommand mycom=new SqlCommand(selectstr,DB.con);SqlDataReader mydr=mycom.ExecuteReader();lvwBook.Items.Clear();if(!mydr.HasRows){MessageBox.Show("没有查询到数据");}else{while(mydr.Read()){string BookNo=(string)mydr["BookNo"];string Bookname=(string)mydr["Bookname"];string Author=(string)mydr["Author"];string Publishing=(string)mydr["Publishing"];string Pubtime=(string)mydr["Pubtime"].ToString();string Price=(string)mydr["Price"].ToString();ListViewItem lvwItem=new ListViewItem(BookNo);lvwItem.Tag=BookNo;lvwBook.Items.Add(lvwItem);lvwItem.SubItems.AddRange(new string[]{Bookname, Author,Publishing,Pubtime,Price});}}mydr.Close();DB.con.Close();}}}}添加图书信息DB.con.Open();string insertstr=@"INSERT INTO[LibrarySystem].[dbo].[tb_BookInfo]([BookNo],[BookName],[Author],[Publishing],[PubTime],[Price])VALUES('"+txtBookNo.Text+"','"+txtBookname.Text+"','"+txtAuthor.Text +"','"+txtPublishing.Text+"','"+dateTimePicker1.Value+"','"+txtPrice.Text+"')";SqlCommand com=new SqlCommand(insertstr,DB.con);int i=com.ExecuteNonQuery();label7.Text="成功添加"+i.ToString()+"本新书";DB.con.Close();(二)图书借还模块设计图书借还模块主要用于进行图书的借阅。