《数据库》课程设计报告--图书借阅管理系统的设计与实现_第1页
《数据库》课程设计报告--图书借阅管理系统的设计与实现_第2页
《数据库》课程设计报告--图书借阅管理系统的设计与实现_第3页
《数据库》课程设计报告--图书借阅管理系统的设计与实现_第4页
《数据库》课程设计报告--图书借阅管理系统的设计与实现_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SQL Server数据库 课程设计题目:图书借阅管理系统的设计与实现院、 系: 计算机信息与技术系 学科专业: 软件工程 学 号: B10060XXX _学生姓名: XXXX 指导教师: XX 2012年06月目录引 言1第一章 需求分析2一、功能需求2二、数据需求2第二章 概要设计3一、系统设计目标3二、系统功能设计3三、开发工具的选择4第三章 详细设计5一. 实体E-R图5二. 表的设计6三界面设计7第四章 软件实现21一、登录实现21二、图书管理21三、图书借阅21四、图书查询21五、图书增加21第五章 软件测试22一、测试方案22二、测试项目22三、测试项目及测试内容22四、测试用例

2、23五、评价23第六章 课程设计总结24参考文献25引 言随着社会的发展,人们对知识的需求也不断地增长。在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就势在必行。图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。本软件针对图书馆的业务范围及工作特点,设计了图书查询、新增图书、图书借阅书以及图书归还等5个子系统,这5个子系统包括了图书馆的主要业务,可以全面实现对图书馆采购、编目、检索、

3、统计和流通等业务的计算机管理,使图书馆管理水平和业务水平跃上一个新的台阶。应用本系统可以在计算机上灵活、方便地管理图书,从而大大的提高了处理速率,使管理更加现代化。本系统是根据实际情况和具体内容,按照一定的要求,科学、合理的进行系统分析、设计,具体包括画面设计、数据输入、查询、新增、删除等设计。从而使本系统完全能满足经济性、灵活性、系统性及可靠性的要求。本系统的实现的主要功能有:图书馆图书的查询、新书的入库、图书的借阅和归还等等功能,是一个基本可以满足借阅者和图书馆管理人员的需要的数据库。第一章 需求分析一、功能需求根据出版社图书的规模日益扩增,图书类别的日益繁琐,经销商与出版社频繁交易,行业

4、竞争日益激烈。面对诸多问题时:一款优秀的出版社图书管理软件是每一个从事出版社图书销售与管理的必备的工具。出版社图书出版管理是一个庞大的任务,传统方式的图书管理将会造成巨大的人力和物力的浪费,因此我们需要设计一个可以使工作人员实现使用计算机管理的系统。减轻工作量,实现图书出版管理的高效化。通过本系统,读者可以随时查询图书的信息并对对图书信息进行增加,删除,查询。图书借阅管理系统旨在实现图书管理的现代化,能够很好的利用计算机帮助读者查询各种书籍,也能很好的帮助管理者对书籍的信息有一个及时的了解,极大程度上方便了我们的生活及学习。二、数据需求学生基本信息:学号,姓名。书籍基本信息:图书编号,图书名,

5、作者,出版社,数量。第二章 概要设计一系统设计目标本系统为学校的图书馆信息而设计,实现信息处理的自动化、规范化,主要用于处理图书日常借阅和还书、图书入库、各种查询操作,系统具有以下功能。(1) 完成新书入库、借阅、还书等处理功能(2) 具有借阅者增加、删除等功能(3) 具有各种查询功能二系统功能设计要求系统实现图书馆日常管理事务最主要的功能,包括图书的借出于还回,图书信息的录入、修改和查询,读者信息的录入、修改和查询,员工信息的录入、修改和查询。实现这些基本功能,组建了图书管理系统的基本框架,根据功能的关联关系和集中分组的原则,将系统细化如图2-1所示的结构图。图书馆图书借阅系统归还图书借阅图

6、书图书借阅图书信息管理系统设置新书入库查询图书信息删除图书信息用户密码修改登录处理图2-1 系统功能结构图三开发工具的选择本系统采用 Microsoft SQL Server 2008创建后台数据库,前台开发工具采用的Microsoft SQL Server Management Studio,编程语言为C#。如图2-2所示。图2-2第三章 详细设计一. 实体E-R图数据库设计使系统开发中非常重要的一个环节,数据库结构设计的好坏将直接影响系统的效率。在设计数据库之前,要了解用户需求,从而确定数据库结构。否则,如果在代码实现过程中再修改数据库的结构,将会浪费人力和物力。同时,在数据库设计中,表的

7、数量不能太多,否则系统的升级和维护将很困难。由概要设计中系统结构可以得出实体及他们之间的联系。实体具体的描述及其联系E-R图,如图3-1所示:读者信息电话读者编号读者姓名密码图书编号图书信息出版社名称数量作者 借 阅管理员信息电话管理员编号管理员姓名密码新书添加图3-1 E-R图二. 表的设计2.1图书信息图书信表:表名为:“图书查询”,用于保存所以图书信息,其结够如图3-2所示。图3-2 book表的结构2.2读者信息读者信息表:表名为:“图书借阅”,用于保存可以在本馆借书的所有读者信息,其结果如图3-3所示。图3-3 reader表的结构三界面设计 3.1登录窗体设计登录窗体作为系统的启动

8、窗体,用于核对用户和密码,只有图书馆工作管理人员才能登录到本系统进行操作。登录窗体的设计比较灵活,只要能实现用户和密码的验证即可,本系统将其设计成为一个小窗体。登录窗体文件名设计为“Form1.cs”3.1.1界面设计在该窗体上添加3个Label、2个TextBox、2个Button控件。登录窗体及其主要控件的属性设置如图3-4界面设计 图3-4 登录窗体3.1.2代码设计:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawin

9、g;using System.Linq;using System.Text;using System.Windows.Forms;/添加命名空间using System.Data.SqlClient;namespace feng public partial class Form1 : Form public Form1() InitializeComponent(); private void textBox3_TextChanged(object sender, EventArgs e) private void button1_Click(object sender, EventArgs

10、 e) string strcon = Data Source=.;Initial Catalog=图书馆借阅系统;Integrated Security=True; SqlConnection sqlCon = new SqlConnection(strcon); sqlCon.Open(); string sql = select * from 登录 where username=form1name and password=password; SqlCommand cmd = new SqlCommand(sql, sqlCon); cmd.Parameters.Add(form1nam

11、e, SqlDbType.NChar, 20); cmd.Parameters.Add(password, SqlDbType.NChar, 20); cmd.Parametersform1name.Value = username.Text; cmd.Parameterspassword.Value = password.Text; /创建 SqlDataReader,必须调用 SqlCommand 对象的 ExecuteReader 方法,而不要直接使用构造函数。 SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() dr.Close(

12、); Formmain formmain = new Formmain(); formmain.Show(); this.Hide(); Else MessageBox.Show(密码错误,请重新输入!); /name.Clear(); password.Clear(); sqlCon.Close(); private void textBox1_TextChanged(object sender, EventArgs e) private void textBox2_TextChanged(object sender, EventArgs e) private void button2_Cl

13、ick(object sender, EventArgs e) Application.Exit(); 3.2 图书管理模块设计图书管理窗体作为系统的功能窗体,用于有以下功能图书查询、图书借阅、图书增加、和退出到登录窗体。登录窗体文件名设计为“Formmain.cs”.3.2.1界面设计在该窗体上添加5个Button控件,其中图书管理窗体及其主要控件的属性设置如图3-5所示。他分别连接到图书查询、图书借阅、图书新增、图书归还和登录窗体。图3-5 图书管理3.2.2代码设计:using System;using System.Collections.Generic;using System.Co

14、mponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace fengpublic partial class Formmain : Form public Formmain() InitializeComponent(); private void button1_Click(object sender, EventArgs e) Selectbook selectbook = new Selectbook

15、(); selectbook.Show(); private void button3_Click(object sender, EventArgs e) Addbook addbook = new Addbook(); addbook.Show(); private void button6_Click(object sender, EventArgs e) Application.Exit(); private void button2_Click(object sender, EventArgs e) Borrowbook borrowbook = new Borrowbook(); b

16、orrowbook.Show(); private void button4_Click(object sender, EventArgs e) Returnbook returnbook = new Returnbook(); returnbook.Show(); 3.3图书借阅窗体设计图书借阅窗体作为系统的启动窗体,用于借出和还入,其运行界面如图1-13所示。登录窗体文件名设计为“Form4.cs”。3.3.1界面设计在该窗体上添加2个Label、2个TextBox、2个Button控件,其中图书借阅窗体及其主要控件的属性设置如图3-6所示。图3-6 图书借阅3.3.2代码设计:(关键代码

17、)namespace fengpublic partial class Borrowbook : Form public Borrowbook() InitializeComponent(); private void label3_Click(object sender, EventArgs e) private void button2_Click(object sender, EventArgs e) Formmain formmain = new Formmain(); formmain.Show(); this.Hide(); private void button1_Click(o

18、bject sender, EventArgs e) string strcon = Data Source=BXAIT-PC;Initial Catalog=图书馆借阅系统;Integrated Security=True; SqlConnection sqlCon = new SqlConnection(strcon); sqlCon.Open(); string sql = select * from dbo.借阅信息 where sno=sno or bookid=bookid; SqlCommand cmd = new SqlCommand(sql, sqlCon); cmd.Par

19、ameters.Add(sno, SqlDbType.NChar, 10); cmd.Parameters.Add(bookid, SqlDbType.NChar, 10); cmd.Parameterssno.Value = textBox1.Text; cmd.Parametersbookid.Value = textBox2.Text; SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() dr.Close(); string lend = insert into dbo.借阅信息 values(sno,bookid); SqlCom

20、mand cmd2 = new SqlCommand(lend, sqlCon); cmd2.Parameters.Add(sno, SqlDbType.NChar, 10); cmd2.Parameters.Add(bookid, SqlDbType.NChar, 10); cmd2.Parameterssno.Value = textBox1.Text; cmd2.Parametersbookid.Value = textBox2.Text; cmd2.ExecuteNonQuery(); MessageBox.Show(借书成功!); else MessageBox.Show(图书馆没有

21、这本书,请重新输入!); textBox1.Clear(); textBox2.Clear(); sqlCon.Close(); 3.4图书查询窗体设计图书查询窗体通过输入图书名称查询出作者,出版社,数量。图书查询窗体文件名设计为“Form2.cs”.3.4.1界面设计在该窗体上添加5个Label、5个TextBox、3个Button控件,其中图书查询窗体及其主要控件的属性设置如表3-7所示。图3-7 图书查询3.4.2代码设计:(关键代码)namespace fengpublic partial class Selectbook : Form public Selectbook() Init

22、ializeComponent(); private void button1_Click(object sender, EventArgs e) private void button2_Click(object sender, EventArgs e) Formmain formmain = new Formmain(); formmain.Show(); this.Hide(); private void button1_Click_1(object sender, EventArgs e) Borrowbook borrowbook = new Borrowbook(); borrow

23、book.Show(); Private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) private void button3_Click(object sender, EventArgs e) SqlConnection sqlcon = new SqlConnection(Data Source=.;Initial Catalog=图书馆借阅系统;Integrated Security=True); sqlcon.Open(); string str = select * f

24、rom 查询 where bookid=bookid or bookname=bookname or bookauthor=bookauthor or bookpub=bookpub or bookstate=bookstate; SqlCommand cmd = new SqlCommand(str, sqlcon); cmd.Parameters.Add(bookid, SqlDbType.NChar, 10); cmd.Parameters.Add(bookname, SqlDbType.VarChar, 50); cmd.Parameters.Add(bookauthor, SqlDb

25、Type.VarChar, 50); cmd.Parameters.Add(bookpub, SqlDbType.VarChar, 50); cmd.Parameters.Add(bookstate, SqlDbType.VarChar, 50); cmd.Parametersbookid.Value = this.textBox1.Text; cmd.Parametersbookname.Value = this.textBox2.Text; cmd.Parametersbookauthor.Value = this.textBox3.Text; cmd.Parametersbookpub.

26、Value = this.textBox4.Text; cmd.Parametersbookstate.Value = this.textBox5.Text; this.textBox1.Text = NULL; this.textBox2.Text = NULL; this.textBox3.Text = NULL; this.textBox4.Text = NULL; this.textBox5.Text = NULL; SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read() this.textBox1.Text = drbooki

27、d.ToString().Trim(); this.textBox2.Text = drbookname.ToString().Trim(); this.textBox3.Text = drbookauthor.ToString().Trim(); this.textBox4.Text = drbookpub.ToString().Trim(); this.textBox5.Text = drbookstate.ToString().Trim(); 3.5图书新增窗体设计图书新增窗体作为系统的启动窗体,用于对新书入库,其运行界面如图1-13所示。登录窗体文件名设计为“Form3.cs”.3.5

28、.1界面设计在该窗体上添加4个Label、4个TextBox、2个Button控件,其中图书增加窗体及其主要控件的属性设置如表3-8所示。图3-8 图书新增3.5.2代码设计:(关键代码)namespace feng public partial class Addbook : Form public Addbook() InitializeComponent(); private void button1_Click(object sender, EventArgs e) SqlConnection sqlcon = new SqlConnection(data source=.;Initi

29、al Catalog=图书馆借阅系统;Integrated Security=True); String str = insert into dbo.新增 values(bookid,bookname,bookauthor,bookpub); sqlcon.Open(); / SqlCommand cmd = new SqlCommand(insert into 新增(bnum,bname,bauthor,bpub,) values( + textBox1.Text + , + textBox2.Text + , + textBox3.Text + , + textBox4.Text + ),

30、 sqlcon); SqlCommand cmd = new SqlCommand(str, sqlcon); cmd.Parameters.Add(bookid, SqlDbType.NChar, 10); cmd.Parameters.Add(bookname, SqlDbType.VarChar, 50); cmd.Parameters.Add(bookauthor, SqlDbType.VarChar, 50); cmd.Parameters.Add(bookpub, SqlDbType.VarChar,50); cmd.Parametersbookid.Value = textBox

31、1.Text; cmd.Parametersbookname.Value = textBox2.Text; cmd.Parametersbookauthor.Value = textBox3.Text; cmd.Parametersbookpub.Value = textBox4.Text; cmd.ExecuteNonQuery(); sqlcon.Close(); MessageBox.Show(添加成功!); this.textBox1.Clear(); this.textBox2.Clear(); this.textBox3.Clear(); this.textBox4.Clear()

32、; private void button2_Click(object sender, EventArgs e) Formmain formmain = new Formmain(); formmain.Show(); this.Hide(); 3.6图书归还窗体设计图书归还窗体作为系统的启动窗体,用于对新书归还,其运行界面如图1-13所示。登录窗体文件名设计为“Form5.cs”.3.6.1界面设计在该窗体上添加2个Label、2个TextBox、2个Button控件,其中图书增加窗体及其主要控件的属性设置如表3-9所示。 图3-9 图书归还3.6.2代码设计:(关键代码)namespace

33、 feng public partial class Returnbook : Form public Returnbook() InitializeComponent(); private void button2_Click(object sender, EventArgs e) Formmain formmain = new Formmain(); formmain.Show(); this.Hide(); private void button1_Click(object sender, EventArgs e) SqlConnection sqlcon = new SqlConnec

34、tion(data source=localhost;Initial catalog=图书馆借阅系统;Integrated security=sspi;); string str = delete from dbo.借阅信息 where sno=sno and bookid=bookid; sqlcon.Open(); SqlCommand cmd = new SqlCommand(str, sqlcon); cmd.Parameters.Add(sno, SqlDbType.NChar, 10); cmd.Parameters.Add(bookid, SqlDbType.NChar, 10)

35、; cmd.Parameterssno.Value = textBox1.Text; cmd.Parametersbookid.Value = textBox2.Text; cmd.ExecuteNonQuery(); sqlcon.Close(); MessageBox.Show(还书成功!); this.textBox1.Clear(); this.textBox2.Clear(); 第四章 软件实现首先用SQL Server 2008建立数据库的两个表,将图书信息,读者用户名和密码建立。然后用Microsoft Visual Studio 2010建立五个窗体。用代码实现窗体与数据库的连

36、接和窗体与窗体之间的连接。第一个窗体为登录界面,分别设有登录按钮。通过登录按钮进入第二个窗体进行图书管理,再进入第三个图书借阅,再进入第四个图书查询,最后可以对新入库的图书做增加,进入第五个窗体。一、登录实现(见图3-4)二、图书管理(见图3-5)三、图书借阅(见图3-6)四、图书查询(见图3-7)五、图书新增(见图3-8)六、图书归还(见图3-9)第五章 软件测试一、测试方案采用黑盒测试方法。对功能进行逐一测试,在输入合理及不合理的数据后测试系统的正常运作情况。二、测试项目1. 读者登陆测试2. 读者进行信息查询测试3. 图书信息管理测试三、测试项目及测试内容测试1:名称:读者登陆测试目的:测试系统操作界面内容:用户名密码输入、合理性检查、合法性检查,系统操作界面显示控制。测试2:名称:图书信息查询测试目的:测试系统信息查询功能内容:输入关键字,进行图书信息查询。 测试3:名称:图书信息管理测试目的:测试系统信息增加、删除、修改、查询功能。内容:输入有效信息,进行图书信息增加、删除、修改、查询。四、测试用例系统登录测试: 输入输出用户名密码 iuh错误用户名空我123错误用户名非法fengjunweiabc错误密码错误123123正确登录成功fen

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论