C++图书馆管理系统课程设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

....学习参考面向对象课程设计图书馆管理系统院(系)别信息工程系班级学号姓名指导教师时间2011-10-10—2011-10-21课程设计任务书....学习参考题目图书管理系统C++语言课程设计系(部)信息工程系专业信息管理与信息系统班级学生姓名学号10月10日至10月21日共2周指导教师(签字)系主任(签字)年月日....学习参考一、设计内容及要求1.设计目的学生根据所学的数据库原理与程序设计的知识,能够针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,测试等,完成题目要求的功能,从而达到掌握开发一个小型数据库的目的。2.设计内容1.必须设计的基本数据表:图书基本信息表,借书卡信息表,借阅信息表,图书分类信息表,代码表等。2.功能模块:1)图书基本情况的录入、修改、删除等基本操作。2)办理借书卡模块。3)实现借书功能。4)实现还书功能。5)能方便的对图书进行查询。6)对超期的情况能自动给出提示信息。二、设计原始资料(1)电子出版社出版的《VISUALC++程序设计及应用》,贺怀清等编著.(2)高等教育出版社出版的《数据库系统简明教程》,王珊。....学习参考三、设计完成后提交的文件和图表1.计算说明书部分1.课程设计报告(3000—5000字),纸质打印稿(1)需求分析(功能模块层次图)(2)系统设计(包括详细设计和界面设计)(3)代码设计(主要功能函数)(4)测试记录(测试各项功能的正确性、容错性)(5)课程设计总结2.系统程序演示及答辩。3.课程设计任务书。....学习参考2.图纸部分:程序流程图程序开始登录界面面还书管理借书管理读者资料图书资料借书确定增修删查读者显示系统界面面增修删查图书显示程序结束退出....学习参考四、进程安排10月10日—10月12日构建框架,画出流程图。划定以后每天要完成的任务。学习数据库的相关知识。10月13日学习ODBC数据库连接技术。10月14日—21日按照12号的安排完成所需代码。10月22日后写课程设计报告书。五、主要参考资料[1]BeckZaratian.MicrosoftVisualVisualC++6.0程序员指南.希望设备创作室译.北京:北京希望电脑公司出品,1998[2]RichardC.Leinecker,TomArcher.VisualC++6宝典.张艳,张谦译.北京:电子工业出版社,1999[3]李强,贾云霞.VisualC++项目开发实践.北京:中国铁道出版社,2004[4]郑莉,董渊,张瑞丰.C++语言程序设计.2003.[5]李闽溟等.VisualC++6.0数据库系统开发实例导航[M].北京:人民邮电出版社[6]闪四清.《数据库系统原理与应用教程[M].清华大学出版社....学习参考成绩评定表作品成绩报告成绩口试(答辩)成绩总评成绩....学习参考目录摘要·····························21.图书管理系统概述················31.1图书管理系统总体设计思想·····31.2总体设计流程图···············42.图书管理系统详细设计·············52.1新建数据库(SQLserver)········52.2创建数据源···················52.3C++中MFC应用程序编程·····52.3.1建立基本对话框并与数据库连接································52.3.2主要功能函数源代码········73.课程设计总结和体会··············19....学习参考摘要图书馆管理系统创建基于MFCAPPWizard[exe],利用SQLSERVE2000和MFCODBC进行数据库的连接,在可视化的界面上进行用户名、图书及借书卡的查询、添加、修改、删除,对数据库表内的信息列表进行操作。图书馆管理系统主要完成了用户登录功能、新建/删除用户功能、用户管理功能,对数据库内图书、借书卡和用户信息进行查询、添加、删除、修改功能。图书馆管理系统设计是有下列几步完成的:首先对整体功能进行分析,开始是用户登录,登陆成功后显示主界面,其分为图书资料、读者资料、借书管理、还书管理和退出五个菜单;第二步是对五个菜单继续划分成具体的类进行实现;第三步是根据课程设计的要求在数据库内的建立具体的表,并且进行连接,及对数据库数据库内容的操作,与此同时完成界面的退出操作;第四步是对图书馆管理系统进行的全面优化,修改不足。关键词:MFC,数据库,图书,管理....学习参考1.图书管理系统概述1.1图书管理系统总体设计思想图书馆管理系统的功能为读者提供借书、还书和查询所需图书及图书、读者卡的管理等功能。图书馆管理系统的功能模块有:(1)登录界面只有管理员才能使用全部功能,更好的保护图书馆内的一些信息不被破坏。(2)读者资料能实现对读者的显示、读者信息增加、读者查询、读者信息修改和读者信息删除功能。(3)图书资料能实现对图书显示、图书信息增加、图书查询、图书信息修改和图书信息删除功能。(4)借书管理可与数据库中的图书信息表连接实现借书的功能。(5)还书管理可与数据库中的图书信息表连接实现还书的功能(6)退出退出程序,结束运行。通过SQLserver建立一个图书馆管理系统的数据库,在控制面板的管理工具上用手动方式添加数据源进行连接。而与数据表的连接采用记录集的形式一一建立连接,可以进行图书资料和读者资料的管理,图书资料管理包括图书信息增加、图书查询、图书信息修改和图书信息删除四项,读者资料管理管理包括读者信息增加、读者查询、读者信息修改和读者信息删除。用ODBC语言将数据库与C++连接起来,首先是登录界面,只有管理员才可进入。登陆成功后,管理员可在系统界面进行读者资料、图书资料、借书管理、还书管理等功能,通过对话框的跳转实现借书、还书、图书新增、查询等功能。在每个对话框都可实现新增、查询、删除、修改等功能顺利的对图书馆进行管理。程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。1.2总体设计流程图....学习参考程序开始登录界面面还书管理借书管理读者资料图书资料借书确定增修删查读者显示系统界面面增修删查图书显示程序结束退出....学习参考2.图书管理系统详细设计2.1新建数据库(SQLserver)新建数据库名为library,然后在数据库下建立五个表,分别为BOOK、BORROW、CLERK、HISTORY、READER。其中,BOOK是存放图书信息的,BORROW是存放借书信息的,CLERK是存放管理员信息的,READER是存放读者信息的。然后设计各个表中的字段,并定义主键,然后输入数据即可。2.2创建数据源此次课程设计用ODBC语言将数据库与C++连接,在连接之前应创建数据源。在控制面板上打开管理工具,可以找到数据源(ODBC),添加数据源,可以创建不同类型的数据库,此次设计用到了SQLServer,便选择其,打开SQLServer中的服务管理器可找到服务器的名称,将默认数据库改为自己的数据库。点下一步直至完成。这样,数据源创建成功了。2.3C++中MFC应用程序编程2.3.1建立基本对话框并与数据库连接其步骤如下所示○1双击新建的对话框或建立类向导,如下图:....学习参考○2点击OK,则如下图所示:○3在所示对话框中输入Name,然后Baseclass中选择CRecordset,点击OK,出现下图:....学习参考○4既连接数据源,注意选择记录集类型为Dynaset。点击OK,出现下图:○5选择要连接的数据库表(此例选择dbo.BOOK),点击OK,就完成了与数据库表的连接。其他对话框同此例。2.3.2主要功能函数源代码○1登录函数voidCLoginDlg::OnConfirm()//登录函数{//TODO:AddyourcontrolnotificationhandlercodehereCClerkDataSetmrsDataSet;/*声明记录集*/....学习参考CStringmSqlStr;UpdateData(TRUE);//将相应控件上的值反应到变量上if(m_strName.IsEmpty())/*判断用户名信息是否为空*/{AfxMessageBox(请正确输入用户名!);return;}mSqlStr=SELECT*FROMCLERKWHERENAME=';//查询数据库中表CLERK中名字是输入的mSqlStr=mSqlStr+m_strName;mSqlStr=mSqlStr+'ANDPASSWORD=';mSqlStr=mSqlStr+m_strPassword;mSqlStr=mSqlStr+';if(!mrsDataSet.Open(AFX_DB_USE_DEFAULT_TYPE,mSqlStr)){AfxMessageBox(CLERK表打开失败!);return;}if(!mrsDataSet.IsEOF()){//OpenallfunctionforuserCDialog::OnOK();}else{AfxMessageBox(登录失败,请重新输入!);return;}}登录界面为....学习参考登录成功为○2图书资料中的查询函数voidCBookDlg::OnEnquery(){//TODO:AddyourcontrolnotificationhandlercodehereUpdateData(TRUE);if(m_strBookIDQ.IsEmpty()&&m_strBookNameQ.IsEmpty()){m_rsDataSet.m_strFilter=;....学习参考m_rsDataSet.Requery();DisplayRecord();SetButtonState();return;}BOOLmAll=FALSE;if(!m_strBookIDQ.IsEmpty()){m_rsDataSet.m_strFilter=BOOK_ID='+m_strBookIDQ;m_rsDataSet.m_strFilter=m_rsDataSet.m_strFilter+';mAll=TRUE;}if(!m_strBookNameQ.IsEmpty()){if(mAll){m_rsDataSet.m_strFilter=m_rsDataSet.m_strFilter+ANDBOOK_NAME=';m_rsDataSet.m_strFilter=m_rsDataSet.m_strFilter+m_strBookNameQ;m_rsDataSet.m_strFilter=m_rsDataSet.m_strFilter+';}else{m_rsDataSet.m_strFilter=BOOK_NAME='+m_strBookNameQ;m_rsDataSet.m_strFilter=m_rsDataSet.m_strFilter+';}}m_rsDataSet.Requery();DisplayRecord();SetButtonState();}○3图书资料中的修改函数voidCBookDlg::OnEdit()....学习参考{//TODO:Addyourcontrolnotificationhandlercodeherem_bEdit=TRUE;SetButtonState();SetTextState();CWnd*pWnd;pWnd=GetDlgItem(IDC_BOOKNAME);pWnd-SetFocus();}○4图书资料中的删除函数voidCBookDlg::OnDelete(){//TODO:Addyourcontrolnotificationhandlercodeherem_rsDataSet.Delete();DisplayRecord();SetButtonState();}○5图书资料中的增加函数voidCBookDlg::OnNew(){//TODO:Ad

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功