图书管理系统.docx
- 文档编号:14927901
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:38
- 大小:1.23MB
图书管理系统.docx
《图书管理系统.docx》由会员分享,可在线阅读,更多相关《图书管理系统.docx(38页珍藏版)》请在冰点文库上搜索。
图书管理系统
《数据库原理与应用》
课程设计
题目图书管理系统
院系
专业班级
学生姓名
学号
设计地点
指导教师
《数据库原理与应用》课程设计任务分配
院(系):
教研室:
软件教研室
课程设计题目
图书管理系统
课程设计目的
《数据库原理与应用》课程设计是计算机类专业的集中实践性环节之一,是课程教学中的一项重要内容,是完成教学计划达到教学目标的重要环节,是帮助学生全面牢固地掌握课堂教学内容、培养学生分析问题、解决问题的能力进行的一次全面的综合练习。
通过结合设计题目进行综合性应用,对所学知识达到融会贯通的程度,对提高学生的综合素质具有重要的意义。
1、加深对数据库基础理论和基本知识的理解。
2、掌握数据库设计与使用的基本方法。
3、提高运用数据库解决实际问题的能力
小组成员及任务分配
姓名
学号
承担任务
是否组长
组织策划
主界面与登陆界面
读者信息管理
图书信息管理
借还信息与图书更换
摘要
二十一世纪是信息的社会,信息作为社会最主要的资源,将成为战略资源引起人们广泛的关注。
如何获取信息?
图书是我们最好的获取信息的方式,但由于图书馆图书收藏量大大增加,使传统的图书管理员的工作日益繁重起来。
迫使人们起用新的管理方法来管理图书即图书管理系统。
图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
经过分析,使用Microsoft公司的VisualBasic6.0为开发工具,利用其提供的各种面向对象的可视化开发平台作为开发工具,采用面向对象技术,图形化的应用开发环境,尤其是它有一个功能极其强大的集成环境提供级开发人员,使得开发人员可通过菜单、界面、图形浏览工具、对话框以及嵌入的各种生成器来轻松地完成各种复杂的操作。
开发过程中不断修正和改进,直到形成用户满意的可行系统。
关键字:
图书管理数据库VisualBasic6.0
目录
1需求分析1
1.1系统目标设计1
1.2本系统的开发设计思想1
1.3开发和运行环境选择1
1.4系统功能分析1
1.41读者信息的输入、修改、查询1
1.42图书信息的输入、修改、查询1
1.43借书、还书信息2
1-4-4图书更换2
2系统功能设计模块1
2.1系统模块图1
2.2概念模块图2
2.3逻辑模块4
3数据库分析与设计6
3.1数据库系统6
3.2数据库系统的简介6
3.3数据库的设计思想7
3.4利用c#平台连接并创建数据库8
4详细设计9
4.1用户登录9
4.2管理员界面11
4.3读者信息管理12
4.4图书信息管理与查询15
4.5借还信息操作与查询20
4.6图书更换25
5总结29
6参考资料30
1需求分析
1.1系统目标设计
通过一个图书馆管理信息系统,使图书馆的信息管理工作系统化、规范化、自动化,从而达到提高学校管理效率的目的。
1.2本系统的开发设计思想
系统应符合图书馆信息管理的规定,满足图书馆日常管理的工作需要,并达到操作过程中的直观、方便、实用、安全等要求;系统采用模块化程序设计方法,既便于各种数据的查询,又便于系统功能的修改,及时根据用户需求进行数据的添加、删除、修改、查询等操作。
1.3开发和运行环境选择
开发工具:
VisualBasic6.0、sql数据库
运行环境:
Windows98、WindowsNT或Windows2000。
1.4系统功能分析
1.41读者信息的输入、修改、查询
包括:
读者编号、读者姓名
1.42图书信息的输入、修改、查询
包括:
图书编号、图书名称、作者姓名、出版社名称、图书价格、图书类别。
1.43借书、还书信息
包括:
借书、还书信息的办理:
包括读者编号、图书编号。
1.44图书更换
统计的内容包括:
未还图书、已还图书和所有业务。
并按照读者姓名、图书书名、图书作者、图书出版社、图书分类、图书价格进行统计。
对图书进行添加、修改、删除
2系统功能设计模块
2.1系统模块图
在系统功能分析的基础上,考虑VisualBasic6.0程序编制的特点,得到如图2.1系统功能模块如下:
图2-1系统功能模块
2.2概念模块图
2.3逻辑模块
针对图书管理信息系统的需求,设计如下面的数据项和数据结构:
管理员信息表,包括的数据项有:
(管理员编号、姓名、密码、);
学生信息表,包括的数据项有:
(学号、姓名、班级、性别、年龄、住址);其中,学生学号设为主键约束;
图书信息表,包括的数据项有:
(图书编号、图书名称、图书作者、图书价格、作者性别、图书语言、出版日期、出版社);其中图书编号设为主键约束;
借书信息表,包括的数据项有:
(图书编号、借出时间、还书时间、学生编号);
图书更换信息表,包括的数据项有:
(图书编号、损坏或丢失时间、更换时间);
完成了数据库的逻辑设计之后,即可开始数据库的物理设计。
本图书管理信息系统采用的SQLServier数据库,并在其下创建了5个数据表。
表2-1管理员-----management
字段名
数据类型
长度与格式
关键字
编号(adno)
Varchar
10
是
姓名(adname)
Varchar
10
否
密码(admima)
Varchar
20
是
表2-2学生-----stuinfo
字段名
数据类型
长度与格式
关键字
学号(stuno)
Varchar
20
是
姓名(stuname)
Varchar
10
否
班级(class)
Varchar
20
否
性别(stusex)
Char
2
否
生日(birthday)
Datetime
否
住址(stuplace)
Varchar
50
否
表2-3图书-----bookinfo
字段名
数据类型
长度与格式
关键字
编号(bookno)
Varchar
20
是
书名(bookname)
Varchar
20
否
作者(bookauthor)
Varchar
20
否
价格(bookprice)
Varchar
10
否
作者性别(atsex)
Char
否
语言(booklanguage)
Varchar
10
否
出版日期(bookday)
Datetime
否
出版社(bookplace)
Varchar
10
否
表2-4借书记录-----lendinfo
字段名
数据类型
长度与格式
关键字
图书编号(bookno)
Varchar
20
是
借出时间(lendday)
Datetime
否
还入时间(returnday)
Datetimer
否
学号(stuno)
Varchar
20
是
表2-5图书更换-----change
字段名
数据类型
长度与格式
关键字
图书编号(bookno)
Varchar
20
是
损坏时间(losetime)
Datetime
否
更换时间(changetim)
Datetimer
否
3数据库分析与设计
3.1数据库系统
数据库系统本质上是一个用计算机存储记录的系统。
数据库本身可被看作为一种电子文件柜:
也就是说,它是收集计算机数据文件的仓库或容器。
系统用户可以对这些文件执行插入数据、检索数据、更改数据、删除数据等一系列操作。
总之,数据库系统是一个计算机存储记录的系统,即它是一个计算机系统,该系统的目标存储信息并支持用户检索和更新所需要的信息。
图3-1数据库系统简图
3.2数据库系统的简介
通过图书馆图书管理系统管理员可以简捷、方便的对图书记录查阅、增加、删除等功能,而用户也可以通过这个系统对进行图书查询、借阅、归还等功能。
该数据库应用程序按照用户权限实现功能的不同分为两部分:
外部学生对数据库的查询访问和内部管理人员对数据记录的管理维护。
每一部分中包含各自实现的各项功能,将按照窗体设计以及运行情况的顺序逐一进行设计本系统采用Microsoftsqlservice使用Microsoftvirtualstudio技术建立数据源的链接,并且生成图书管理的数据库应用程序从而实现数据库的管理功能。
3.3数据库的设计思想
(1)规划阶段
确定开发的总目标,给出计划开发的软件系统的功能、性能、可靠性以及接等方面的设想。
(2)需求分析阶段
认真细致地了解用户对数据的加工要求,确定系统的功能与边界。
本阶段的最终结果,提供一个可作为设计基础的系统说明书,包括对软硬件环境的要求和一整套完善的数据流程图。
(3)设计阶段
把需求分析阶段所确定的功能细化,主要工作是概念设计阶段、逻辑设计阶段、物理设计阶段,然后,对每个阶段内部设计详细的流程。
(4)程序编制阶段
以一种或几种特定的程序设计语言表达上一阶段确定的各模块控制流程。
程序编制时应遵循结构化程序设计方法。
(5)调试阶段
对已编好的程序进行单元调试(分调),整体调试(联调)和系统测试(验收)。
(6)运行和维护阶段
这是整个设计周期最长的阶段,其工作重点是收集和记录系统实际运行的数据。
在运行中,必须保持数据库的完整性,必须有效的处理数据故障和进行数据库恢复。
同时解决开发过程的遗留问题,改正错误进行功能完善。
3.4利用c#平台连接并创建数据库
(1)添加sqlconnection控件
(2)添加新项新建数据库、创建表如图书信息管理界面的bookinfo表
(3)添加datagridview控件于窗体下端,如
所示黑色部分,连接数据源选择上述表
4详细设计
4.1用户登录
图4-1建立起始界面
图4-2管理员登陆界面
详细代码:
try
{
if(textBox1.Text==""||textBox2.Text=="")//判断是否输入用户名和密码
{
MessageBox.Show("用户名或密码不能为空!
","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);//如果输入不完全则弹出提示
return;
}
else
{
stringname=textBox1.Text.Trim();
stringpwd=textBox2.Text.Trim();
//stringconnstr="database=jsglxt;uid=;pwd=;";
SqlConnectionconn=newSqlConnection("DataSource=.\\SQLEXPRESS;AttachDbFilename=C:
\\Users\\Administrator\\Desktop\\图书馆信息管理系统\\图书系统\\图书系统\\tsgl.mdf;IntegratedSecurity=True;UserInstance=True;");
conn.Open();
SqlCommandcmd=newSqlCommand("select*frommanagementwhereadno='"+name+"'andadmima='"+pwd+"'",conn);
SqlDataReadersdr=cmd.ExecuteReader();
sdr.Read();
if(sdr.HasRows)
{
stringtime=DateTime.Now.ToString();
conn.Close();
this.Hide();
主界面f2=new主界面();
f2.Show();
}
else
{
textBox1.Text=null;
textBox2.Text=null;
MessageBox.Show("用户名或密码错误!
","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
this.Close();
4.2管理员界面
图4-3管理员登陆后主界面
利用menustrip与statusstrip以及timer控件实现界面的制作
4.3读者信息管理
图4-4读者信息管理界面
代码如下:
privatevoidbutton1_Click(objectsender,EventArgse)
{
textBox1.Text=null;
textBox2.Text=null;
textBox3.Text=null;
textBox4.Text=null;
textBox5.Text=null;
textBox6.Text=null;
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection("DataSource=.\\SQLEXPRESS;AttachDbFilename=C:
\\Users\\Administrator\\Desktop\\图书馆信息管理系统\\图书系统\\图书系统\\tsgl.mdf;IntegratedSecurity=True;UserInstance=True;");
stringsqlString="insertintostuinfo(stuno,stuname,class,stusex,birthday,stuplace)values('"+textBox1.Text.Trim().ToString()+"','"+textBox2.Text.Trim().ToString()+"','"+textBox3.Text.Trim().ToString()+"','"+textBox4.Text.Trim().ToString()+"','"+textBox5.Text.Trim().ToString()+"','"+textBox6.Text.Trim().ToString()+"')";
conn.Open();
//建立数据命令对象
SqlCommandcmd=newSqlCommand(sqlString,conn);
//执行命令,返回影响行数
introwsReturned=cmd.ExecuteNonQuery();
tsglDataSet1.Clear();
sqlDataAdapter1.Fill(tsglDataSet1,"stuinfo");
sqlDataAdapter1.Update(tsglDataSet1,"stuinfo");
dataGridView1.Refresh();
//关闭连接
conn.Close();
MessageBox.Show(rowsReturned.ToString()+"记录已添加!
");
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection("DataSource=.\\SQLEXPRESS;AttachDbFilename=C:
\\Users\\Administrator\\Desktop\\图书馆信息管理系统\\图书系统\\图书系统\\tsgl.mdf;IntegratedSecurity=True;UserInstance=True;");
stringsqlString="updatestuinfosetstuno='"+textBox1.Text.Trim().ToString()+"',stuname='"+textBox2.Text.Trim().ToString()+"',class='"+textBox3.Text.Trim().ToString()+"',stusex='"+textBox4.Text.Trim().ToString()+"',birthday='"+textBox5.Text.Trim().ToString()+"',stuplace='"+textBox6.Text.Trim().ToString()+"'wherestuno='"+textBox1.Text.Trim()+"'";
conn.Open();
//建立数据命令对象
SqlCommandcmd=newSqlCommand(sqlString,conn);
//执行命令,返回影响行数
introwsReturned=cmd.ExecuteNonQuery();
tsglDataSet1.Clear();
sqlDataAdapter1.Fill(tsglDataSet1,"stuinfo");
sqlDataAdapter1.Update(tsglDataSet1,"stuinfo");
dataGridView1.Refresh();
//关闭连接
conn.Close();
MessageBox.Show(rowsReturned.ToString()+"记录已修改!
");
}
privatevoidbutton4_Click(objectsender,EventArgse)
{
strings1=textBox1.Text.Trim();
SqlConnectionconn=newSqlConnection("DataSource=.\\SQLEXPRESS;AttachDbFilename=C:
\\Users\\Administrator\\Desktop\\图书馆信息管理系统\\图书系统\\图书系统\\tsgl.mdf;IntegratedSecurity=True;UserInstance=True;");
stringsqlString="deletefromstuinfowherestuno='"+s1+"'";
conn.Open();
//建立数据命令对象
SqlCommandcmd=newSqlCommand(sqlString,conn);
//执行命令,返回影响行数
introwsReturned=cmd.ExecuteNonQuery();
tsglDataSet1.Clear();
sqlDataAdapter1.Fill(tsglDataSet1,"stuinfo");
sqlDataAdapter1.Update(tsglDataSet1,"stuinfo");
dataGridView1.Refresh();
//关闭连接
conn.Close();
MessageBox.Show(rowsReturned.ToString()+"记录已删除!
");
}
privatevoidbutton5_Click(objectsender,EventArgse)
{
this.Close();
}
}
}
4.4图书信息管理与查询
图4-5图书管理界面
代码如下:
namespace图书系统
{
publicpartialclass图书信息:
Form
{
public图书信息()
{
InitializeComponent();
}
SqlConnectionconn=newSqlConnection("DataSource=.\\SQLEXPRESS;AttachDbFilename=C:
\\Users\\Administrator\\Desktop\\图书馆信息管理系统\\图书系统\\图书系统\\tsgl.mdf;IntegratedSecurity=True;UserInstance=True;");
privatevoid图书信息_Load(objectsender,EventArgse)
{
//TODO:
这行代码将数据加载到表“tsglDataSet1.bookinfo”中。
您可以根据需要移动或移除它。
this.bookinfoTableAdapter.Fill(this.tsglDataSet1.bookinfo);
tsglDataSet1.AcceptChanges();
dataGridView2.Refresh();
dataGridView1.Refresh();
}
//查找
privatevoidbutton1_Click(objectsender,EventArgse)
{
strings1=textBox1.Text;
strings2=textBox2.Text;
strings3=textBox3.Text;
strings4=textBox4.Text;
SqlDataAdapterdap=newSqlDataAdapter("select*frombookinfowherebookno='"+s1+"'",conn);
DataSetds=newDataSet();
dap.Fill(ds);
dataGridView1.DataSource=ds.Tables[0].DefaultView;
}
退出
privatevoidbutton2_Click(objectsender,EventArgse)
{
this.Close();
}
添加前
privatevoidbutton3_Click(objectsender,EventArgse)
{
textBox5.Text=null;
textBox6.Text=null;
textBox7.Text=null;
textBox8.Text=null;
textBox9.Text=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统