大型数据库设计实践报告

题 目:

专 业 软件工程(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 -

软件测试报告 图书管理系统,图书管理系统报告 图书馆管理系统报告相关推荐

  1. 车辆管理系统c语言课程设计报告,图书馆管理系统C语言课程设计报告

    湖北科技大学程序设计课程设计报告项目名称: 图书馆管理系统学生名称: 朱捷学生编号: 2014117241班级: 软工作者1411指导老师: 龚雄星日期: 2016.2.251项目描述设计图书管理系统 ...

  2. 商品管理系统c语言功能模板,C语言课程报告图书馆管理系统可做模板套用.doc

    课 程 报 告 课 程 名 称: 程序设计实践 专 业 班 级 : 学 生 姓 名 : 学 号 : 任 课 教 师 : 学 期 :2010-2011学年第二学期 课程报告任务书 题 目 图书信息管理系 ...

  3. c语言图书馆管理系统(功能众多)

    信息时代的到来,人类逐渐走向信息化,图书馆保存这大量信息资源,需要一个信息库对图书信息进行保存,图书馆管理系统应此而生. 该图书馆管理系统使用vs2019编译器c语言进行编写,首先对可能会使用到的c语 ...

  4. 基于ssm图书馆管理系统源码和论文

    开发工具:idea (eclipse) 环境:jdk1.8 mysql5.7 演示视频: [java毕业设计]基于ssm图书馆管理系统源码和论文 随着社会的发展,计算机的优势和普及使得图书馆管理的开发 ...

  5. 图书馆管理系统——vs2017\sqlserver\c#

    基于vs2017的图书馆管理系统 图书馆管理系统 基于vs2017的图书馆管理系统 1. 用到的工具:vs2017 .sqlserver 2. 介绍数据库表: 2.1 首先打开数据库:sqlsrerv ...

  6. 基于Java图书馆管理系统、JAVA图书借阅系统设计与实现 毕业设计开题报告

      本科生毕业论文 基于Java(springboot框架)图书馆管理系统 开题报告 学    院: 专    业: 计算机科学与技术 年    级: 学生姓名: 指导教师:   XXXX大学本科生毕 ...

  7. c语言程序设计图书管理,C语言程序设计报告 图书馆信息管理系统

    C语言程序设计报告 图书馆信息管理系统 2011 年第二阶段课程设计成果报告实训项目: 程序设计技术课程设计 学号: 0112959 姓名: 张麦华 专业: 信息管理与信息系统 实训日期:2011 年 ...

  8. php语言设计图书管理系统,图书馆管理系统PHP版_7tmu7b

    图书馆管理系统PHP版_7tmu7b 所属分类:其他 开发工具:PHP 文件大小:15765KB 下载次数:0 上传日期:2020-11-22 11:12:53 上 传 者:ygrdmbji 说明:  ...

  9. SSM项目图书馆管理系统,适合新人练手和毕设参考,功能首页展示 系统注册登录登出 用户管理 权限控制管理 书籍管理 图书借阅管理 个人借阅记录管理 书籍详细信息展示等

    图书馆管理系统,系统采用B/S架构 系统采用框架:java+maven+stringboot+mybatis+mysql-plus+boostart(前端界面) 首页展示 内容后台管理 菜单权限管理 ...

  10. c语言课程设计作业图书管理系统,C语言课程设计图书馆管理系统程序代码.doc

    C语言课程设计图书馆管理系统程序代码.doc includestdio.h includewindows.h includestring.h includeconio.h define M 100 s ...

最新文章

  1. Linux 服务器日志文件查找技巧精粹
  2. Django的ORM映射机制与数据库实战
  3. spingboot集成webSocket
  4. Git最新版下载(安装包)——阿里镜像快速下载
  5. HTML5 入门详解
  6. linux怎么用网络yum源,Linux配置本地网络YUM源
  7. c java python go 哪种编程语言接近编程的本质_一图看懂编程语言迁移模式:终点站是Python、Go、JS...
  8. axure 浏览器插件_7款超级实用的谷歌浏览器插件
  9. Ubuntu14.04编译Opencv3.1错误:下载ippicv,解决方案
  10. 项目管理系统TOP10,好用的产品研发项目管理系统都在这里了
  11. java函数式编程的好处
  12. VIM 第五节:文件信息、跳转、定位括号和缩进 https://fishc.com.cn/thread-65856-1-1.html
  13. 利用python进行身份证号码大全_身份证号码设置显示格式,我用了最笨的办法,你有什么好办法吗?...
  14. 服务器虚拟化后有几个io地址,CPU虚拟化,内存虚拟化和IO虚拟化
  15. Centos7搭建Frps服务端的教程
  16. 2023年 计算机考研 资料集(2022.02.03)
  17. 黑群晖折腾记(二)-为不支持通信的UPS 增加断电自动关 NAS
  18. Python:画三角形
  19. CSR8670项目实战:4人组网蓝牙对讲耳机
  20. 【python】定义一个人类Person: 定义一个方法say_hello(),可以向对方发出问候语“hello,my name is XXX” 有三个属性:名字、身高、体重

热门文章

  1. soapui连接oracle,myeclipse 安装soapui插件
  2. 火了!GitHub标星三万,Python抢票神器
  3. 微电子专业深度盘点:哪所大学芯片最强?强在哪?(第2弹)
  4. 基于微信小程序的旧物交易平台(二手交易) 毕设
  5. 百度文库的几种下载方法
  6. 第七章_生成对抗网络(GAN)
  7. 灵悟礼品网上专卖店——第三阶段Sprint
  8. 架构蓝图--软件架构 4+1 视图模型
  9. 【Android】雾霾定位探测系统
  10. 北妈新课题:基因儿童和雾霾的秘密