图书管理系统报告

大型数据库设计实践报告

题 目:

专 业 软件工程(NIIT ) 学 生 姓 名 杨雨童

班 级 学 号 B12041016 指 导 教 师 毛燕琴 指 导 单 位 计算机学院/软件学院 日 期 2014.5.30

图书管理系统

一、 课题总体介绍

图书管理系统具有系统管理员、图书管理员和读者三类用户,这三类用户分别拥有不同的权限。

系统管理员:管理用户信息(对应数据库中libUsers 这张表)。 图书管理员:管理图书信息(对应数据库中libBooks 这张表)。 读者:对图书的操作。

分工说明:

1. 创建表,数据库的操作,包括系统连接数据库的各项操作,程序调试(江杰) 2. 程序界面、框架设计,图书编码入库功能的实现(杨雨童) 3. 系统管理员权限各项功能的实现(李健)

4. 读者权限各项功能包括借书,还书,查询数目功能的实现(杨金霖)、 5. 图书管理员权限中修改,删除图书信息功能的实现(陈维钊)

系统管理员:管理用户信息(对应数据库中libUsers 这张表),可对包括系统管理员和图书管理员及读者在内的用户信息进行查询,添加,删除,修改。

三、总体设计

图书馆系统,包含用户和图书两个主要的数据。由此我们的数据库要包含两张表,一张对应用户信息(此程序中的libUsers 这张表),另一张对应图书信息(此程序中的libBooks 这张表)。

1. 对于用户信息这张表(下图) ,我们的图书管理系统要求用户包括系统管理员,图书管理员和读者三个用户,这三个用户对应的是三个不同的权限。在表中用属性userRank 来定义,1,2,3分别表示系统管理员,图书管理员和读者。另外表中还有userID ,userName ,userPass 这些基础属性,用来区别用户以及判断用户登录。我们还赋予了系统管理员限制用户登录的权限,在表中用userLock 属性来表示,0,1分别表示该用户是否可以登录。

2. 对于图书信息这张表(下图),主要是对图书信息的描述,这张表相对比较简单,用bookName ,bookAuthor ,bookPress ,bookDate 等属性来描述图书信息,方便用户查询到相应图书。

四、详细设计 (界面的设计,图书添加功能的实现)

(1)、各个界面的设计 1. 登录界面

2. 查询,添加,删除,修改功能

查询,修改,删除功能在系统中包括对用户信息的修改和对图书信息的修改。这个系统中的查询,修改,删除功能都是通过dataGridView 控件来实现的,查询包括对用户信息的查询,对图书信息的查询,上图是对用户信息的查询,设置dataGridView 与数据库中的表关联,即可把表中的信息显示到控件窗口中,以此来达到查询的目的。删除和修改功能都需要用户首先选中dataGridView 控件中的一行,然后点击相应按钮跳转到对应的界面。例如修改功能(如下图),界面中有用户ID ,用户名,密码,权限,分别对应libUsers 表中的userID ,userName ,userPsaa 和userRank 这几个属性,用户可以通过在textbox 控件中输入要修改的信息,就可以直接对表中的数据进行修改。

string userID = textBox3.Text.Trim();

string userName = textBox1.Text.Trim(); string userPass = textBox2.Text.Trim();

int userRank = comboBox1.SelectedIndex + 1;

int userLock = 0;

if (checkBox1.Checked == true ) {

userLock = 1; }

conDatabase editUserCon = new conDatabase (); DataTable addDt = new DataTable (); addDt = editUserCon.select("libUsers" );

if (textBox3.Text == "" || userName == "" || userPass == "" ) {

MessageBox .Show(" 读者信息不能为空" ); } else {

//string addString = "insert into libUsers values(" + userID + ","+'"' + userName +'"'+ "," +'"'+ userPass+'"' +","+ "getdate()" + "," + userRank + "," + "0)"; string addString = "update libUsers SET userID=" + userID +

",userName=" + "'" + userName + "'" + ",userPass=" + "'" + userPass + "'" + ",userRank=" + userRank + ",userLock=" + userLock + " where userID=" + userIDold; int res = editUserCon.edit(addString); if (res > 0) {

MessageBox .Show(" 修改成功!" ); }

添加功能在这个系统中可以为用户表和图书表进行添加,这两者的实现方式相同,和上面修改功能也类似。同样是用户填写textbox 信息对应到表中的属性实现对表的修改。

4. 图书编码入库

将图书的信息同步到数据库,管理员对其进行管理。

string bookName = textBox2.Text.ToString().Trim();

string bookAuthor = textBox3.Text.ToString().Trim(); string bookPress = textBox4.Text.ToString().Trim(); int bookStatus = comboBox1.SelectedIndex;

string bookDate = dateTimePicker1.Value.Year.ToString() + "-" +

dateTimePicker1.Value.Month.ToString()

+ "-" +

dateTimePicker1.Value.Day.ToString();

conDatabase addBookCon = new conDatabase (); DataTable booksDt = new DataTable (); booksDt = addBookCon.select("libBooks" );

五、测试数据和结果分析

1. 登录

系统管理员登录,根据表中的用户名密码(sa ,niit#1234)进行系统管理员登录,选择正确的权限。

如果用户名密码错误,则出现弹窗。

如果用户名密码没有输入,则出现弹窗。

如果成功登录,则进入下级界面。

2. 用户及图书的查询,添加,删除,修改

3. 借书

选择借阅操作系统教程这本书

确认借阅,成功借阅。 4. 还书

之前已经借阅了操作系统教程这本书,点击还书按钮之后跳转到还书界面

选择操作系统教程这本书,点击归还,则成功还书。

六、调试和问题分析

对于界面的设计来说,主要是从自身出发,考虑平时学校的图书馆管理系统,再结合自身学习的知识来完成这个小型的图书管理系统。对于图书的编码入库功能,因为要和数据库进行连接,进行数据的同步更新,所以必须保证和数据库的连接没有问题。

七、软件使用说明

步骤:首先用户需要进行登录,系统给用户提供了三种权限,系统管理员,图书管理员和读者,用户在成功进入自己对应权限的界面后可以通过点击按钮进行操作。界面简单明了,易于操作,不需要过多说明。

八、总结

经过这段时间的努力基本完成了图书管理系统。对于这个图书管理系统,刚开始对于系统的基本功能是这样设计的:管理员对图书信息的管理以及系统管理员对读者信息的管理、读者的借书、还书。对于一个大型的程序,在实现的过程中,考虑到实际,对于具体的功能 进行了增加、删除。

同时通过这几天的程序及报告编写,把学过的C#知识运用到了实践。同时,通过和其它同学的交流,对于C#窗体程序和数据库的连接有了进一步的理解。我也发现了自己的很多不足,自己知识的很多漏洞,看到了自己的实践经验还是比较缺乏,理论联系实际的能力还是比较脆弱。尤其是编写大型的程序所要拥有的知识和技能比较缺乏。程序编好了,还要经过调试和修改,这步也很关键,好的程序是经过了无数次的修改和调试才产生的。我们的程序基本上能够满足要求,但还有一些地方需要改进,在今后我们应该在多看书的同时还要加强实践的练习。才能进一步提高自己的编程能力。

- 11 -

大型数据库设计实践报告

题 目:

专 业 软件工程(NIIT ) 学 生 姓 名 杨雨童

班 级 学 号 B12041016 指 导 教 师 毛燕琴 指 导 单 位 计算机学院/软件学院 日 期 2014.5.30

图书管理系统

一、 课题总体介绍

图书管理系统具有系统管理员、图书管理员和读者三类用户,这三类用户分别拥有不同的权限。

系统管理员:管理用户信息(对应数据库中libUsers 这张表)。 图书管理员:管理图书信息(对应数据库中libBooks 这张表)。 读者:对图书的操作。

分工说明:

1. 创建表,数据库的操作,包括系统连接数据库的各项操作,程序调试(江杰) 2. 程序界面、框架设计,图书编码入库功能的实现(杨雨童) 3. 系统管理员权限各项功能的实现(李健)

4. 读者权限各项功能包括借书,还书,查询数目功能的实现(杨金霖)、 5. 图书管理员权限中修改,删除图书信息功能的实现(陈维钊)

系统管理员:管理用户信息(对应数据库中libUsers 这张表),可对包括系统管理员和图书管理员及读者在内的用户信息进行查询,添加,删除,修改。

三、总体设计

图书馆系统,包含用户和图书两个主要的数据。由此我们的数据库要包含两张表,一张对应用户信息(此程序中的libUsers 这张表),另一张对应图书信息(此程序中的libBooks 这张表)。

1. 对于用户信息这张表(下图) ,我们的图书管理系统要求用户包括系统管理员,图书管理员和读者三个用户,这三个用户对应的是三个不同的权限。在表中用属性userRank 来定义,1,2,3分别表示系统管理员,图书管理员和读者。另外表中还有userID ,userName ,userPass 这些基础属性,用来区别用户以及判断用户登录。我们还赋予了系统管理员限制用户登录的权限,在表中用userLock 属性来表示,0,1分别表示该用户是否可以登录。

2. 对于图书信息这张表(下图),主要是对图书信息的描述,这张表相对比较简单,用bookName ,bookAuthor ,bookPress ,bookDate 等属性来描述图书信息,方便用户查询到相应图书。

四、详细设计 (界面的设计,图书添加功能的实现)

(1)、各个界面的设计 1. 登录界面

2. 查询,添加,删除,修改功能

查询,修改,删除功能在系统中包括对用户信息的修改和对图书信息的修改。这个系统中的查询,修改,删除功能都是通过dataGridView 控件来实现的,查询包括对用户信息的查询,对图书信息的查询,上图是对用户信息的查询,设置dataGridView 与数据库中的表关联,即可把表中的信息显示到控件窗口中,以此来达到查询的目的。删除和修改功能都需要用户首先选中dataGridView 控件中的一行,然后点击相应按钮跳转到对应的界面。例如修改功能(如下图),界面中有用户ID ,用户名,密码,权限,分别对应libUsers 表中的userID ,userName ,userPsaa 和userRank 这几个属性,用户可以通过在textbox 控件中输入要修改的信息,就可以直接对表中的数据进行修改。

string userID = textBox3.Text.Trim();

string userName = textBox1.Text.Trim(); string userPass = textBox2.Text.Trim();

int userRank = comboBox1.SelectedIndex + 1;

int userLock = 0;

if (checkBox1.Checked == true ) {

userLock = 1; }

conDatabase editUserCon = new conDatabase (); DataTable addDt = new DataTable (); addDt = editUserCon.select("libUsers" );

if (textBox3.Text == "" || userName == "" || userPass == "" ) {

MessageBox .Show(" 读者信息不能为空" ); } else {

//string addString = "insert into libUsers values(" + userID + ","+'"' + userName +'"'+ "," +'"'+ userPass+'"' +","+ "getdate()" + "," + userRank + "," + "0)"; string addString = "update libUsers SET userID=" + userID +

",userName=" + "'" + userName + "'" + ",userPass=" + "'" + userPass + "'" + ",userRank=" + userRank + ",userLock=" + userLock + " where userID=" + userIDold; int res = editUserCon.edit(addString); if (res > 0) {

MessageBox .Show(" 修改成功!" ); }

添加功能在这个系统中可以为用户表和图书表进行添加,这两者的实现方式相同,和上面修改功能也类似。同样是用户填写textbox 信息对应到表中的属性实现对表的修改。

4. 图书编码入库

将图书的信息同步到数据库,管理员对其进行管理。

string bookName = textBox2.Text.ToString().Trim();

string bookAuthor = textBox3.Text.ToString().Trim(); string bookPress = textBox4.Text.ToString().Trim(); int bookStatus = comboBox1.SelectedIndex;

string bookDate = dateTimePicker1.Value.Year.ToString() + "-" +

dateTimePicker1.Value.Month.ToString()

+ "-" +

dateTimePicker1.Value.Day.ToString();

conDatabase addBookCon = new conDatabase (); DataTable booksDt = new DataTable (); booksDt = addBookCon.select("libBooks" );

五、测试数据和结果分析

1. 登录

系统管理员登录,根据表中的用户名密码(sa ,niit#1234)进行系统管理员登录,选择正确的权限。

如果用户名密码错误,则出现弹窗。

如果用户名密码没有输入,则出现弹窗。

如果成功登录,则进入下级界面。

2. 用户及图书的查询,添加,删除,修改

3. 借书

选择借阅操作系统教程这本书

确认借阅,成功借阅。 4. 还书

之前已经借阅了操作系统教程这本书,点击还书按钮之后跳转到还书界面

选择操作系统教程这本书,点击归还,则成功还书。

六、调试和问题分析

对于界面的设计来说,主要是从自身出发,考虑平时学校的图书馆管理系统,再结合自身学习的知识来完成这个小型的图书管理系统。对于图书的编码入库功能,因为要和数据库进行连接,进行数据的同步更新,所以必须保证和数据库的连接没有问题。

七、软件使用说明

步骤:首先用户需要进行登录,系统给用户提供了三种权限,系统管理员,图书管理员和读者,用户在成功进入自己对应权限的界面后可以通过点击按钮进行操作。界面简单明了,易于操作,不需要过多说明。

八、总结

经过这段时间的努力基本完成了图书管理系统。对于这个图书管理系统,刚开始对于系统的基本功能是这样设计的:管理员对图书信息的管理以及系统管理员对读者信息的管理、读者的借书、还书。对于一个大型的程序,在实现的过程中,考虑到实际,对于具体的功能 进行了增加、删除。

同时通过这几天的程序及报告编写,把学过的C#知识运用到了实践。同时,通过和其它同学的交流,对于C#窗体程序和数据库的连接有了进一步的理解。我也发现了自己的很多不足,自己知识的很多漏洞,看到了自己的实践经验还是比较缺乏,理论联系实际的能力还是比较脆弱。尤其是编写大型的程序所要拥有的知识和技能比较缺乏。程序编好了,还要经过调试和修改,这步也很关键,好的程序是经过了无数次的修改和调试才产生的。我们的程序基本上能够满足要求,但还有一些地方需要改进,在今后我们应该在多看书的同时还要加强实践的练习。才能进一步提高自己的编程能力。

- 11 -


相关内容

  • "十三五"重点项目-数字图书馆项目可行性研究报告
  • "十三五"重点项目-数字图书馆项目 可行性研究报告 编制单位:北京智博睿投资咨询有限公司 本报告是针对行业投资可行性研究咨询服务的专项研究报告,此报告为个性化定制服务报告,我们将根据不同类型及不同行业的项目提出的具体要求,修订报告目录,并在此目录的基础上重新完善行业数据及分析内容 ...

  • 图书室三个三分之一建设自查报告
  • 仁怀市XX小学 图书室实施 "三个三分之一"工作 自查报告 学校图书室是学校图书资料中心,是为学校教育.教学工作服务的机构,也是学校开展素质教育活动的重要场所.为深化基础教育领域综合改革,推动我省新 "两基" (县域内义务教育基本均衡发展和基本普及十五年教育) ...

  • 高校图书馆管理信息系统分析报告正文
  • 高校图书馆管理信息系统分析报告 一.引言 随着社会信息量的与日俱增,在计算机日益普及的今天,图书馆管理也需利用计算机作为平台,开发一套行之有效的图书管理系统,这对提高学校图书管理信息化.网络化的水平具有重要的现实意义.图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理工 ...

  • 教辅类图书市场调研及发展趋势预测
  • 中国教辅类图书市场调研与发展前景预测 报告(2015年) 报告编号:151639A 行业市场研究属于企业战略研究范畴,作为当前应用最为广泛的咨询服务,其研究成果以报告形式呈现,通常包含以下内容: 一份专业的行业研究报告,注重指导企业或投资者了解该行业整体发展态势及经济运行状况,旨在为企业或投资者提供 ...

  • 图书管理信息系统详细设计报告
  • 图书管理信息系统 详细设计报告 1.引言 1.1编写目的 随着社会的不断发展,人们对知识的追求不断增加,从而对书籍的需求也越来越大.但是人工管理图书的手续繁索.效率低下给具有强烈时间观念的管理人员带来了诸多不便,图书馆缺少一套完善的图书管理软件,为了对图书的管理方便,必须开发图书管理系统.随着计算机 ...

  • 图书管理系统实验报告
  • <数据库原理及应用> 课程设计报告 --图书管理系统 班级: 学号: 姓名:XXXX 指导老师: 课程设计时间:2014年1月6日至 1月10日 目录 一.需求分析 1.数据库需求分析-------------.3 2.数据流图----------------.4 3.数据字典----- ...

  • 软件开发实习报告
  • [软件开发实习报告]通过这次在清华IT的实习,学到了很多东西,软件开发实习报告.也了解到了软件开发的真正价值.这次的实践让我真切体会到了我们前面所学知识的用处所在.以前总认为所学的知识只是理论上的知识,根本就没有任何作用,但通过这次实习,让我学有所用.而且学到了很多在学校学不到的东西,受益匪浅. 在 ...

  • 问卷调查报告结论(共7篇)
  • 篇一:问卷调查表结论分析 春华秋实,让书香伴随我们成长--关于图书馆不文明行为调查研究报告: 调查背景:图书馆是读书人的精神绿洲,是求学者成才的摇篮,是取之不尽用之不竭的知识宝库.图书馆作为一个学校的缩影,也折射着整个学校的精神风貌.但是在日常使用图书馆的过程中我们却发现了一些读者的不文明行为,这些 ...

  • 图书管理系统需求分析报告
  • 图书管理系统需求分析 1.引言 1.1编写目的 编写本报告的目的是明确本系统的详细需求,提供给使用单位确认系统的功能和性能,并在此基础上进行修改和完善,同时作为设计人员进行软件设计的依据和使用单位的验收标准. 1.2项目背景 实现一个将各种图书管理和服务功能集合起来的管理信息系统就显得十分必要,既可 ...