精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc

上传人:sccc 文档编号:4891350 上传时间:2023-05-21 格式:DOC 页数:29 大小:797.55KB
返回 下载 相关 举报
精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc_第1页
第1页 / 共29页
精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc_第2页
第2页 / 共29页
精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc_第3页
第3页 / 共29页
精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc_第4页
第4页 / 共29页
精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《精品设计有源代码和数据库基于VS和MSSQLSERVER的图管理系统的设计与实现.doc(29页珍藏版)》请在三一办公上搜索。

1、四川工商职业技术院学 生 实 训 报 告实 训 课 程 WinForms高级应用开发 开课实验室 机房10 系 部 信息工程系 年 级 2008级 专业班 计算机08318 小组成员:学 生 姓 名 徐 伟 学 号 28 学 生 姓 名 刘 毅 学 号 学 生 姓 名 杨 星 学 号 23 学 生 姓 名 胡 然 学 号 47 学 生 姓 名 王 娇 学 号 14 学 生 姓 名 冯 通 学 号 开 课 时 间 2010至 2011 学年 第 一 学期目录一、概述31.1项目名称31.2背景3二、项目任务说明32.1系统实现的目标32.2总体功能需求与关键信息需求32.3图书管理系统的可行性分

2、析42.4 用户环境42.5 其他要求5三、需求分析53.1系统需求53.2 实现功能5(1)系统用例图5(2)功能清单73.3用例说明7四、系统设计94.1 模块设计94.2 类图94.3 时序图10五、数据库设计125.1 逻辑设计125.2 表设计12六、界面设计146.1、主界面实现146.2、用例界面实现15七、系统维护和改进187.1 运行维护187.2系统的改进与提高19八、代码19九、总 结28一、概述1.1项目名称图书管理系统1.2背景当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管

3、理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。图书管理系统(电子阅览室)主要提供网上的电子图书阅览平台,读者可以通过该系统阅览丰富的电子资源。在图书管理系统中,读者可以方便地对书目进行检索和阅览,足不出户便可尽览群书。图书管理系统主要提供网上的图书阅览平台。电子阅览室可提供24小时的在线服务,最大限度的利用了当前互联网的各种优势,使得您无论身在何处,只要能接入互联网就可以享受到它所提供的方便,快捷的服务。它既具有传统图书馆的大部分功能,像图书的查阅及阅览,又新增了基于现有网络技术的许多实用的功能,像用户注册,书签

4、,书评等。它充分的利用了互联网资源,使商家和用户都能从中获得益处。二、项目任务说明2.1系统实现的目标图书管理系统的开发主要要实现的目标有以下几个方面:(1)界面设计友好、美观。(2)数据存储安全、可靠。(3)信息分类清晰、准确。(4)强大的查询功能,保证数据查询的灵活性。(5)实现对图书借阅和归还过程的全程数据信息跟踪。(6)提供图书借阅排行榜,为图书管理员提供了真实的数据信息。(7)提供灵活、方便的权限设置功能,使整个系统的管理分工明确。(8)具有易维护性和易操作性。2.2总体功能需求与关键信息需求根据图书管理系统的实际需求,可以将图书管理系统划分为系统设置、图书管理、读者管理、图书借还、

5、系统查询。(1)系统设置模块:添加删除管理员、设置管理员的权限、说明图书存放书架信息添加删除书架信息。(2)读者管理模块:添加删除不同类型的读者及注明可借图书的数量、添加删除读者的档案。(3)图书管理模块:添加删除不同类型的的图书及注明图书可借的天数库存数量、添加删除图书的档案。(4)图书借还模块:可查询读者借阅和归还图书的信息及图书的现有库存量。(5)系统查询模块:可根据不同的条件(条形码、书名、类别、作者、书架、出版社)查询读者需要的图书、读者可根据不同的条件(图书条形码、图书名称、读者编号、读者名字、到期时间)查询自己借阅图书信息。2.3图书管理系统的可行性分析本次毕业设计题目:“学校图

6、书管理系统的开发”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。本系统的设计主要从以下几方面做起:系统业务流程分析、系统的功能设计、系统的数据库结构设计等。作这些工作需对数据库知识有足够认识,并深入的了解Visual C#的使用和管理系统的相关知识。在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大量信息进行管理,并对

7、数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。随着信息量的不断增加,作为计算机的三大主要应用(科学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并且现代的信息管理系统几乎都以数据库技术作为核心。现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易出错,新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。系统的可行性分析有以下几个方面:(1)技术可行性:处理速度快、准确通过权限的设置,数据的安全性好、方便查

8、询、借阅管理等。 (2)经济可行性:系统建设不需要很大的投入、可缩减人力投入。(3)运行上可行性:本系统作为一个小型的图书馆信息管理系统,所耗费的资源非常的小。 (4)从各种社会因素可行性分析:可降低工作人员工作强度,提高效率,会得到学校工作人员的一致同意的。综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。2.4 用户环境平台:.Net FramwWork 1.1,Visual Studio.NET 2005数据库:SQL Server 2000及其他客户端:浏览器 2.5 其他要求绘制UML所需要的Rational XDE绘制E-R图所需要的PowerDesigner 三、需

9、求分析3.1系统需求随着互联网的爆炸性发展,人们越来越习惯于利用网络来实现所需的服务。传统的图书馆不能满足一部分现代人的需要,而电子阅览室,由于其不受时间与空间的限制同时又具有传统图书馆的大部分功能,能够满足各类用户的常规与特殊需求,而且其方便快捷,实现技术又比较成熟,因此受到当代人的喜爱。3.2 实现功能(1)系统用例图 1借阅者请求服务的用例图用例图说明:(1) Serch for Book:书籍查询用例。(2) Reserve the book:书籍预订用例。(3) Logon the system:登陆系统。(4) Query Info:查询借阅信息。(5) Borrow the bo

10、ok:借阅书籍。(6) Return the book:归还书籍。(7) Return With Fine:还书时交纳罚金。如果借阅者所借书籍超过借阅期限未还,还书的时候就要交纳一定的罚金。2.图书馆管理员处理借书 、还书等的用例图用例图说明:(1) Get book:借阅书籍(2) Get With Fine:书籍预定处理(3) Lend book:归还书籍(4) Check user account:查询用户账户信息(5) Remove Reservation:删除预定信息3.系统管理员进行系统维护的用例图用例图说明:(1) Remove Book:删除书籍(2) Add Book:增加书

11、籍(3) Remove or Update Title:删除或更新书目(4) Add Title:增加书目(5) Query Book Info:查询图书信息(6) Query Borrower Info:查询借阅者信息(7) Remove or Update Borrower:删除或更新借阅者账户(8) Add Borrower:添加借阅者账户(2)功能清单功能编号功能名称备注01登陆系统02退出登陆03管理员登录04借书处理05还书处理06添加图书07修改密码08查询个人信息09查询图书信息10删除图书11借阅图书12返还图书13系统管理员登陆即超级管理员14读者信息管理15图书信息管理1

12、6图书资料管理3.3用例说明 用例01:用户登录A.用例图B.描述用户进行登录已拥有操作系统的权限。C.参与者管理员、普通用户 用例02:退出登录A. 用例图B. 描述用户退出登录C. 参与者普通用户、管理员 查找图书 A、用例图 B、描述在功能主页上,点击图书信息管理,再点击此图书链接,可进行图书查询。输入图书名称、作者或描述后,点击确定按钮,进行图书查找。系统要验证用户是否登陆,如果没登陆,则不能阅读此书。 C、参与者普通用户 查询用户基本信息 A、用例图 B、描述功能主页上,点击登陆按钮,输入个人账号、密码登陆,进入个人主页,点击基本信息进行查询,查询后显示用户户基本信息。 C、参与者普

13、通用户四、系统设计4.1 模块设计1. 用户登录模块:填写已分配的用户名称,填写正确的密码,进入主控制页面。2. 图书查询模块:图书分类,按类型逐级显示。3. 图书搜索模块:提供多种查询条件,可按需要进行查询。4. 管理员模块:显示书评列表和一条书评内容,添加书评。5. 图书入库模块:为喜爱的图书投票,显示投票结果,选出认为最值得一看的图书。6. 权限管理模块:分配用户名和密码,设定用户的级别。同时,还要给图书资源进行分级,以确定哪些级别的用户可以阅读。 4.2 类图1.图书档案管理类、设置图书类型类、设置出版社类、图书注销类之间相互关系2. 读者档案管理类、读者类型设置类等之间的关系3.图书

14、借阅管理相关类关系4.3 时序图(1)系统管理员添加书籍(2)图书管理员处理借书(3)系统管理员删除书目五、数据库设计5.1 逻辑设计图书管理系统的系统E-R图如图5.2 表设计书管理员基本信息表tb_admin,如表1所示表1 tb_admin(管理员)表字段名数据类型长度主键描述Adm_idvarchar50是管理员编号Adm_namevarchar50否姓名Adm_passwordvarchar30否密码读者详细信息表tb_reader,如表2所示。表2 tb_reader(读者信息)表字段名数据类型长度主键描述Reader_idvarchar30是读者编号Reader_namevarc

15、har50否读者名称sexchar4否性别Rea_typevarchar50否读者类型 birthday smalldatetime4否生日paperTypevarchar20否证件类型paperNumvarchar30否证件号码telephonevarchar20否电话emailvarchar50否E-mailcreateDatesmalldatetime4否注册日期remarktext16否备注borrownumint4否 借阅次数图书详细信息表tb_book,如表3所示。表3 tb_bookkifo(图书信息)表字段名数据类型长度主键描述Book_codevarchar30是图书条形码B

16、ook_namevarchar50否图书名称Book_typevarchar50否图书类型autorvarchar50否作者translatorvarchar50否译者pubnamevarchar100否出版社pricemoney8否价格pageint4否页码bcasevarchar50否书架storagebigint8否 存储数量inTimesmalldatetime4否入馆时间borrownumint4否被借次数图书借阅和归还信息表tb_borrow_back,如表4所示。字段名数据类型长度主键描述Bor_idvarchar30是借书编号Rea_idvarchar20否读者编号Book_c

17、odevarchar30否图书条形码borrowTimesmalldatetime4否借书时间ygbackTimesmalldatetime4否应该还书时间sjbackTimesmalldatetime4否实际还书时间borrowopervarchar30否借书操作backopervarchar30否还书操作isbackbit1否 是否归还表4 tb_borrowandback(图书借阅和归还信息)表权限信息表tb_purview,如表5所示。表5 tb_purview(权限信息)表字段名数据类型长度主键描述Pur_idvarchar50是用户编号systemsetbit1否系统设置reads

18、etbit1否读者管理booksetbit1否图书管理borrowbackbit1否图书借还systemaquerybit1否系统查询六、界面设计6.1、主界面实现6.2、用例界面实现(1)管理员登陆用例(2)管理员添加读者用例(3)添加管理员用例(4)添加图书用例(5)修改密码用例(6)图书搜索用例(7)借书用例(8)还书用例七、系统维护和改进7.1 运行维护本网站的维护主要包括以下内容:1权限维护管理员需要对用户的用户名、密码和权限进行维护,给每位读者分配享用的用户名和密码,确定阅读级别。2书目管理书目需要经常进行更新,在书目信息表中更改、增加各相应的数据信息。3书目类别管理书目的更新操作

19、,引起书目类别信息表的更改,管理员就需要及时调整书目类别。7.2系统的改进与提高由于各种原因,本系统有许多缺点。针对本系统的一些缺点,在二期开发时主要在以下方面进行改进:1、 加强后台管理页面的建设本系统只是面向用户,对书目的管理只靠人工在后台操作,费时又费力。加强后台管理系统的建设,各项操作由程序执行,方便、准确,又节省人工。2、图书查询页面功能应该加强例如:图书查询功能可以加入查询条件,方便读者查看符合要求的图书。3、各模块之间的联系比较混乱。八、代码下面就是该系统的主要功能及主要代码:(1)登录界面:public partial class LoginForm : Form public

20、 static string uacc; public static string upsw; public static string uname; public static string usex; public static string upart; public static string uright; public LoginForm() InitializeComponent(); private void loginbtn_Click(object sender, EventArgs e) if (this.useracctxt.Text.Trim() = & this.p

21、swtxt.Text = ) MessageBox.Show(请输入您的用户名和密码!, 提示!); return; try string sql; sql = select * from tb_user where uacc= + this.useracctxt.Text + and upsw= + this.pswtxt.Text + ; OleDbDataReader dr = DBHelp.OleReader(sql); dr.Read(); if (dr.HasRows) uacc = this.useracctxt.Text; upsw = this.pswtxt.Text; un

22、ame = druname.ToString(); usex = drusex.ToString(); upart = drupart.ToString(); uright = druright.ToString(); MainForm af = new MainForm(this); this.Hide(); this.useracctxt.Clear(); this.pswtxt.Clear(); af.Show(); else MessageBox.Show(账号或密码错误!, 提示!); this.useracctxt.Clear(); this.pswtxt.Clear(); thi

23、s.useracctxt.Focus(); catch (Exception) MessageBox.Show(数据库无法连接!, 警告!); private void cancelbtn_Click(object sender, EventArgs e) Application.Exit(); private void LoginForm_Closing(object sender, FormClosingEventArgs e) Application.Exit(); 2.添加图书界面public partial class NewBook : Form public NewBook()

24、InitializeComponent(); private void retbtn_Click(object sender, EventArgs e) this.Hide(); private void savebtn_Click(object sender, EventArgs e) if (this.booknotxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.booknametxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.classt

25、xt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.isbntxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.bookcosttxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.bookwritertxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.bookpubtxt.Text = ) Message

26、Box.Show(请输入图书的信息!, 提示!); return; if (this.numtxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; if (this.notetxt.Text = ) MessageBox.Show(请输入图书的信息!, 提示!); return; /string pat3 = u4e00-u9fa5+$;/全为汉字 /string pat4 = (u4e00-u9fa5+|A-Za-z+)$;/汉字或字母 /string pat5 = u4e00-u9fa52,4$;/两到四位汉字 string pat1 =

27、 (d-*)9dxX$;/图书的ISBN号格式X-XXXX-XXXX-X或X-XXX-XXXXX-X(X为数字,以图书实际ISBN号为准) string pat2 = +?1-90-9*$;/正整数 string pat3 = (0|1-90-9*)(.0-92)?$;/双精度浮点数 bool m1 = Program.match(this.isbntxt.Text, pat1); bool m2 = Program.match(this.numtxt.Text, pat2); bool m3 = Program.match(this.bookcosttxt.Text, pat3); if (

28、!m1) MessageBox.Show(图书的ISBN号格式为X-XXXX-XXXX-X或X-XXX-XXXXX-X(X为数字,以图书实际ISBN号为准)!, 提示!); this.isbntxt.Text = ; return; if (!m2) MessageBox.Show(图书购买数量应为大于0的整数!, 提示!); this.numtxt.Text = ; return; if (!m3) MessageBox.Show(图书价格应为XX.XX元!, 提示!); this.bookcosttxt.Text = ; return; int num; num = Convert.ToI

29、nt32(this.numtxt.Text); for (int i = 1, k = Convert.ToInt32(this.booknotxt.Text); i = num; i+, k+) string sql; sql = insert into tb_book(bno,bname,bclass,bisbn,bcost,adder,adddate,bauthor,bpub,bstate,bnote) + values( + k.ToString() + , + this.booknametxt.Text + , + this.classtxt.Text + , + this.isbn

30、txt.Text + , + this.bookcosttxt.Text + , + LoginForm.uname + , + DateTime.Now.ToString() + , + this.bookwritertxt.Text + , + this.bookpubtxt.Text + ,在库, + this.notetxt.Text + ); DataTable dt = DBHelp.ExeOleCommand(sql); MessageBox.Show(注册成功!, 恭喜!); this.Hide(); private void rebtn_Click(object sender

31、, EventArgs e) this.isbntxt.Clear(); Clears(); private void Clears() this.booknametxt.Clear(); /this.isbntxt.Clear(); this.bookcosttxt.Clear(); this.bookwritertxt.Clear(); this.bookpubtxt.Clear(); this.notetxt.Clear(); this.numtxt.Clear(); private void NewBook_Load(object sender, EventArgs e) string

32、 sql; sql = select top 1 bno from tb_book order by bno desc; DataTable dt = DBHelp.ExeOleCommand(sql); int k; for (int i = 0; i 1; i+) if (dt.Rows00.ToString() = ) k = 10000001; else k = Convert.ToInt32(dt.Rows00.ToString(); k+; this.booknotxt.Items.Add(k.ToString(); this.booknotxt.SelectedIndex = 0

33、; this.classtxt.SelectedIndex = 0; private void findbtn_Click(object sender, EventArgs e) if (this.isbntxt.Text = ) MessageBox.Show(请输入图书的ISBN号!, 提示!); return; string sql; sql = select * from tb_book where bisbn= + this.isbntxt.Text + ; OleDbDataReader dr = DBHelp.OleReader(sql); dr.Read(); if (dr.H

34、asRows) this.booknametxt.Text = drbname.ToString().Trim(); this.classtxt.Text = drbclass.ToString().Trim(); this.bookcosttxt.Text = drbcost.ToString().Trim(); this.bookwritertxt.Text = drbauthor.ToString().Trim(); this.bookpubtxt.Text = drbpub.ToString().Trim(); this.notetxt.Text = drbnote.ToString().Trim(); MessageBox.Show(找到匹配图书信息,自动填充基本信息,请填充余下信息!, 提示!);

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

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号