课程设计说明书123.docx
- 文档编号:23779371
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:31
- 大小:928.12KB
课程设计说明书123.docx
《课程设计说明书123.docx》由会员分享,可在线阅读,更多相关《课程设计说明书123.docx(31页珍藏版)》请在冰豆网上搜索。
课程设计说明书123
数学与计算机学院
课程设计说明书
课程名称:
大型数据库-课程设计
课程代码:
8424141
题目:
图书管理系统
年级/专业/班:
计算机科学与技术(3)班
学生姓名:
薛冰清
学 号:
332008090101024
开始时间:
2011年6月15日
完成时间:
2011年6月30日
课程设计成绩:
学习态度及平时成绩(30)
技术水平与实际能力(20)
创新(5)
说明书撰写质量(45)
总分(100)
指导教师签名:
年月日
目录
摘要II
1引言1
1.1问题的提出1
1.2任务与分析1
2.系统分析1
2.1数据库需求分析1
2.2数据概念结构设计2
2.3数据库逻辑结构设计4
2.4个人所设计的部分6
3.程序的设计6
3.1数据库建表6
3.2主要流程图8
4.系统测试9
4.1管理人员的登录9
4.2图书信息模块9
4.3读者信息模块12
4.4借阅图书管理模块14
4.5续借图书管理模块15
4.6归还图书管理模块16
结论17
致谢18
参考文献19
摘要
信息在社会和经济的发展中所起的作用越来越为人们所重视。
信息资源的开发利用水平成为衡量一个国家综合国力的重要标志之一。
计算机作为信息处理的工具,为适应数据处理需求的迅速提高,满足各类信息系统对数据管理的要求,在文件系统的基础上发展基础数据库系统,数据库方法针对事物处理中大量数据管理需求。
随着微机管理系统的推广,数据库应用逐渐普及。
正基于此,本次的“图书管理系统”就采用数据库技术进行开发,此管理系统的主要目的是使图书的销售与买进管理更为简单,同时也较为直观,方便用户的使用。
这个管理系统需要实现的功能包括:
调查一个学校的图书管理信息,设计的图书管理系统主要包括图书信息管理,读者信息管理,借阅图书管理等等查询、修改及更新等操作。
此系统使用C#与SQLServer2000作为开发工具,仅仅只是一个课程设计的程序,如需要真正为图书的管理做系统,那么还需要更为完善的系统和更加复杂的技术。
关键词:
图书管理系统,图书基本信息查询,查看读者的借阅情况,
图书归还情况,图书续借情况。
1引言
1.1问题的提出
图书管理系统对于一个学校来说,是必不可少的。
人工管理的方式存在着太多的缺点:
效率低、保密性差。
对数据的管理也是相当的复杂,容易出错,导致工作繁琐。
在此基础上,如果对各方面的信息加以查询、修改、更新都带来了相当大得麻烦。
随着科学技术的发展,计算机日渐成熟起来,它已进入人类社会的各个领域并发挥重要作用。
使用计算机档案信息管理,有好多好处:
查找方便,可靠性高,存储量大,保密性好,成本低等,能够极大提高管理的效率,也是企业的科学化,与世界接轨的重要条件。
本次我所写的这个简单的图书管理系统,能够减轻用户在图书销售方面的负担,但要真正的管理图书这一功能,还需要其他知识以及更为复杂的数据库。
1.2任务与分析
图书管理系统就是用户通过对图书各方面的管理掌控,方便用户使用的程序。
这个管理系统主要实现的是用户可以对图书进行信息查询、修改、删除等功能的实现,同时,对读者信息、图书借阅情况、图书续借情况进行查询、修改等功能的操作。
对于信息的更新、修改等都存储在数据库中。
对于读者、用户、图书等实体建立相对应得C#来封装它们所包含的各种基本信息。
本系统通过C#与SQLSEVER数据库进行连接,实现以上的查询、修改、删除等功能,同时对数据的存储功能。
2.系统分析
设计数据库系统时,应该充分了解用户各方面需求,包括现有的以及将来可能增加的需求,数据库设计一般包括以下几个步骤:
(1)数据需求分析、
(2)数据库概念结构设计
(3)数据库逻辑结构设计
2.1数据库需求分析
用户的需求具体体现在各种信息的提供,保存,更新和查询。
这就要求数据库的结构能充分满足各种信息的输入和输出。
针对图书馆管理系统的需求,通过对图书馆管理工作过程的内容和数据流程分析,设计出如下的数据项:
1图书管理(图书编号、图书名称、图书定价、条形码、图书类别、出版社、出版年、图书页码、存放位置、配送物品、图书简介、入库时间、总数量、现有数量、备注、借阅次数)
1读者管理(读者编号、姓名、性别、押金、生日、联系电话、联系邮箱、联系地址、注册日期、截止日期、操作员、借阅数量、备注、类型、可借数量、可借天数、每日租金、超期罚金、有效期限、状态)
2借阅图书(图书编号、图书名称、条形码、分类名、借阅日期、应还日期)
3续借图书(读者编号、图书编号、借阅时间、应还时间)
4归还图书(读者编号、图书编号、借阅时间、应还时间)
2.2数据概念结构设计
得到上面的数据项就能够设计出以下各种实体以及它们的关系,为后面的逻辑结构设计打下基础,根据上面的实体设计,可以画出相应的E-R图:
图1图书信息实体E-R图
图2读者信息实体E-R图
图3实体之间的E-R图
2.3数据库逻辑结构设计
图书馆管理系统中数据库的各个表格设计结果如下:
表1管理人员信息表
表2图书信息表
表3读者信息表
表4借阅信息表
表5续借信息表
表6归还信息表
2.4个人所设计的部分
我做了以下的部分的设计:
数据库设计:
(1)对各种信息表的设计
(2)对各种信息表的数据库创建
(3)表中的信息数据的录入
代码设计:
(1)VS与SQLSEVER之间的链接
(2)数据之间的绑定
3.程序的设计
3.1数据库建表
创建数据库
利用企业管理器建立数据库,步骤如下:
(1)右击数据库选“新建数据库”
(2)填写数据库名
(3)选择“确定”,数据库创建成功。
创建信息表
利用企业管理器,进行数据表创建
(1)选择表,右击选择“新建表”,先设计表的字段属性,以及字段之间的约束条件等。
(2)填写数据信息
(3)保存,数据表创建成功。
3.2主要流程图
管理人员的流程图
4.系统测试
测试各个模块功能的结果
4.1管理人员的登录
1)登录未成功
2)登录成功进入管理人员界面
4.2图书信息模块
(1)查询功能
(2)图书信息的添加、删除及修改操作
4.3读者信息模块
(1)查询功能
(2)读者信息添加、修改、删除功能的实现
4.4借阅图书管理模块
4.5续借图书管理模块
4.6归还图书管理模块
结论
通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对灵据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,将SQL语的查询语句用得淋漓尽致,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。
虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。
致谢
本次课程设计能顺利完成,感谢学校的大力支持,感谢数学与计算机学院为我们提供实练的机会,感谢柳荣其老师的细心教导。
虽然之前已经做过了各种编程语言的课程设计,但这次却是第一次将编程语言与数据库的知识相结合来做课程设计,这就必然会有一段漫长而又痛苦的过程,需要在实践中学习,学习中结合实践,欣慰的是自己还是完成了。
在做课程设计的编码调试过程当中遇到了一些问题,在不方便请教老师和同学的时候,充分利用计算机网络,在网络上寻找相关知识点或问题,独自解决问题,这就锻炼了自己的自学能力。
此外,在学校机房实践的时候,因为没有了网络,遇到搞不懂的问题时,是在刘士林老师和其他同学的帮助下解决的,在这里还要再次对他们的付出表示崇高的敬意。
参考文献
1、《软件工程概论》张海藩清华大学出版社
2、《实用软件工程基础》陈明编著清华大学出版社
3、《数据库系统概论》萨师煊,高等教育出版社,2003年5月第3版
4、数据库基础与应用-SQLSERVER2000,成先海,机械工业出版社出版,2003
附录
附录1源程序清单
(1)数据源的链接
namespaceDAL
{
publicclassDB
{
stringStrconn=@"DataSource=.;InitialCatalog=MSlibrary;IntegratedSecurity=True";
//stringStrconn=@"DataSource=S207-095\SQLEXPRESS;InitialCatalog=MSlibrary;IntegratedSecurity=True";
SqlConnectionconn=null;
///
///打开数据库连接
///
publicvoidOpenconnect()
{
if(conn==null)
{
conn=newSqlConnection(Strconn);
}
if(conn.State==ConnectionState.Closed)
{
conn.Open();
}
}
///
///关闭数据库连接
///
publicvoidCloseconnect()
{
if(conn!
=null)
{
conn.Close();
}
}
///
///获取一个连接对象
///
///
publicSqlConnectionconnection()
{
conn=newSqlConnection(Strconn);
conn.Open();
returnconn;
}
///
///执行SQL并返回结果的第一行第一列的值
///
///
///
publicintexecyiyi(stringsql)
{
intintA=0;
SqlCommandcomm=newSqlCommand(sql,connection());
intA=Convert.ToInt32(comm.ExecuteScalar());
returnintA;
}
///
///获取一个执行存储过程的命令对象
///
///
///
///
///
publicSqlCommandcommand(stringproc_name,SqlConnectionconn,CommandTypetype)
{
SqlCommandcomm=newSqlCommand();
comm.CommandText=proc_name;
comm.Connection=conn;
comm.CommandType=type;
returncomm;
}
///
///执行SQL语句
///
///
publicvoidexecute(stringsql)
{
SqlCommandcomm=newSqlCommand(sql,connection());
comm.ExecuteNonQuery();
Closeconnect();
}
///
///在数据库执行查询
///
///
///
publicDataTablequery(stringsql)
{
SqlDataAdaptersda=newSqlDataAdapter(sql,connection());
DataTabledt=newDataTable();
sda.Fill(dt);
conn.Close();
returndt;
}
///
///传入参数并且转换为SqlParameter类型
///
///
///
///
///
///
///
publicSqlParametermakeparameter(stringname,SqlDbTypetype,intsize,ParameterDirectiondirection,stringsqlvalue)
{
SqlParameterparameter=newSqlParameter();
parameter.ParameterName=name;
parameter.SqlDbType=type;
parameter.Size=size;
parameter.Direction=direction;
parameter.SqlValue=sqlvalue;
returnparameter;
}
}
}
(2)图书的查询、添加、修改、删除等功能代码
namespaceDAL
{
publicclassBookManage
{
///
///查询图书信息
///
///
///
publicDataTableQueryBook(stringsql)
{
DBdb=newDB();
DataTabledt=db.query(sql);
returndt;
}
///
///添加图书类型
///
///
publicvoidGetBookclass(ComboBoxbookclass)
{
DBdb=newDB();
DataTabledt=db.query("select*frombookclass");
for(inti=0;i
{
bookclass.Items.Add(dt.Rows[i][0].ToString());
}
}
///
///添加存放位置
///
publicvoidGetBoolcase(ComboBoxbookcase)
{
DBdb=newDB();
DataTabledt=db.query("select*frombookcase");
for(inti=0;i
{
bookcase.Items.Add(dt.Rows[i][1].ToString());
}
}
///
///添加图书
///
///
publicvoidAddBook(stringsql)
{
DBdb=newDB();
db.execute(sql);
MessageBox.Show("添加成功!
","温馨提示");
}
///
///修改图书信息
///
///
publicvoidUpdateBook(stringsql)
{
DBdb=newDB();
db.execute(sql);
MessageBox.Show("修改成功!
","温馨提示");
}
///
///删除图书信息
///
///
publicvoidDelBook(stringsql)
{
DBdb=newDB();
db.execute(sql);
MessageBox.Show("删除成功!
","温馨提示");
}
}
}
(3)读者的查询,图书的借阅、续借、归还等功能代码
namespaceDAL
{
publicclassBorrowAndBack
{
///
///查询读者
///
///
///
publicDataTableQueryReader(stringsql)
{
DBdb=newDB();
DataTabledt=db.query(sql);
returndt;
}
///
///按编号查询图书
///
///
///
publicDataTableQueryBookByid(stringsql)
{
DBdb=newDB();
DataTabledt=db.query(sql);
returndt;
}
///
///按名称查找图书
///
///
///
publicDataTableQueryBookByname(stringsql)
{
DBdb=newDB();
DataTabledt=db.query(sql);
returndt;
}
///
///按条形码查找图书
///
///
///
publicDataTableQueryBookBycode(stringsql)
{
DBdb=newDB();
DataTabledt=db.query(sql);
returndt;
}
///
///借阅图书
///
///
///
publicvoidBorrowBook(stringsql,stringsql1)
{
DBdb=newDB();
db.execute(sql);
db.execute(sql1);
MessageBox.Show("成功","温馨提示");
}
///
///归还图书
///
///
///
publicvoidBackBook(stringsql,stringsql1)
{
DBdb=newDB();
db.execute(sql);
db.execute(sql1);
MessageBox.Show("归还成功","温馨提示");
}
///
///查询借阅的图书
///
///
///
publicDataTableQueryBorrow(stringsql)
{
DBdb=newDB();
DataTabledt=db.query(sql);
returndt;
}
///
///图书续借
///
///
publicvoidGoBookBorrowDay(stringsql)
{
DBdb=newDB();
db.execute(sql);MessageBox.Show("续期成功"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 说明书 123