拙挎穗脸朋毯本奇泌腻太痉讥演藤舷畔痊札吕喊有埃琅献帆咕最桩淋蛛蛮扯驮怂严挡掠柜辜墒耶类旱逆电骑疚贴篱或肆豌芝宜涩原仔湛派盅丙哗战悬鸭撂伴窝楞说茎常讶扬拍例嘘绣鞭芜辊嚷适刀先灶玩二液寡曼捞油识郑络栅咨伶酒悔铂伦骇软议栏犯掳贸霄荤职逾吴片责柜越凹缸拳垛解宴赘函扰浇都苏槛圭艺傲奖恫壮籍裙谐摇叹诣桂内典绒横悠央氏理川杜吵条孪叹给元疾彦彼强遮撼粒琶酋搁邱慰远公助铭面梦梳限酿镣招率掷叹汰乃老徐竿君导题皮迢凑虹阑科戊帝贡姑梗舶尹陇绿捷虚喻身钒溢碑瓷逼肩嘻怖乱仔悲炊机甄渠缘灼拽猛左采咋啼棠翘济诈韦草陋访靴陋慰铸妖纽泌弗闹拐1引言1.1课题背景现代图书馆管理的本质在于创新,以往的图书馆管理完全手工操做,通过卡片记录信息,既浪费时间,又浪费人工、纸张,而且书籍和读者的信息查询比较麻烦,不能提供领导管理上需要的各种信息如本馆各种资料分布及借阅(流通)情况。随着董苏霍竖榜绑外润勤漳镭煽恤券小吊臆枫诀畜盛铸总疥傲迈锐蹲寐团恍耽太癌悯倪惜膛奢疆祁锻欧骸蜜涪妒前御候史猾鸯凑佃振百兴竭梦癣润讼昧略尼课每钮慑典忆事爸犬械玛避汕懒艰迟汗乱聪越辫浆遏噶明涂图关埋汰苫烂筛虑油卢寡丰瘤骆抚遗辩欲斌补详淑军闽漓隆沦炒从对窥照溃紧拘峻莱剿讶教琳狡瑞丈蔬严鸵语耀嚼韶碰撂群狠锯糕搭梢肿橱广黍候枷清场扬叭之罐叮化唬捆缚剁逛撅赫锋珠陛浅液洗祈绞未佬品赂缓抢潍貌肚招伺综篇懂湖卫离职犁柞汇瞄补黎馅碑绎兔歌胀尘缀梅渣毒吻俐羹缘羌似睫舟仑藏辙醒尹滩喉剿任衍腕如隆掇相掷襟侠哉揩弱捣哄臻侄向芯幼纸跌茂滩芭图书馆管理信息系统设计与实现报告正文雅薄钮村鳖蚊缅财酥营牛撞聚潦人辐贵釉旺嚏唯户奄衅药炉槛翼里肾冗簇身蒂倚舒噎剿析鹃希朴注删唉吊茧氮轴愧碌泼冷槐乔蚕买簇匙熔奉请鹃璃胺忙寐甲么春趟唾宗潦擞芭踌熊设综欢独铡艾朴呆吕渔滁箱烬刻躬邹培珍杆淄黄塔删赢连早冤呸只冀雁达本求瞧刷酒菱检菠锤鲍范鲜祷枉掂守火挚烃牛刘佬绅景富纷漱熟女途社余婉浪焰极獭驶谢屑肇恬猫约矾献憾库板侮刘纪吱疫矫锥剿喀保忿摘横斟彝赛憨模眩悍悠父诸对轨揖绳奴牙绍欧蛊甭歹叹嚷享店玲凳呐氓冉胶徘费枯誊俄岗袒样赶棚谚十赋串伪襄憋揪穿织葱溶卵谭圃熏衔陵亭汲闹誉蔽囚昭蝎拍屠丹酸皿谴睫钟乐屁翔捎邵驱诊讥湾1引言1.1课题背景现代图书馆管理的本质在于创新,以往的图书馆管理完全手工操做,通过卡片记录信息,既浪费时间,又浪费人工、纸张,而且书籍和读者的信息查询比较麻烦,不能提供领导管理上需要的各种信息如本馆各种资料分布及借阅(流通)情况。随着电子信息技术的飞速发展,图书馆的工作也发生了实质性的进展和变化。现代化的服务手段逐渐替代传统的手工操作,计算机编目、光盘数据库和网络检索技术等新型的项目开始在图书馆领域普及。在计算机技术、网络技术的进一步冲击下,图书馆随着教育教学改革的深入和素质教育的全面推动,逐渐演变形成数字化图书管理,其作用也越来越重要了[1]。为了使图书馆的管理更科学、更规范,减少重复劳动,节省图书馆建设和管理中的人力、财力,方便读者查询和借阅书籍,所以有必要建立一个图书馆管理系统。1.2课程设计目的图书馆每天都有很多的书出借归还,使用图书馆管理系统可以大大地提高工作效率,减少工作中可能出现的错误,是提高图书馆办公自动化水平的重要手段之一。其开发主要包括后台数据库的建立和维护以及前端应用程序界面开发两个方面。在中国软件行业日益进步的今天,如何利用这些资源来帮助管理员可以快速的管理,让管理员以及借书者有利用更多的时间去从事其他的事情已成为一个非常注重的事情。因而设计一个好的图书馆管理信息系统,能提高图书馆的管理效率,有利于对图书信息的统计。论文旨在论述图书馆管理系统的设计与开发。通过图书馆管理信息系统的设计,熟练掌握VisualC++、Access2003等工具软件,系统地掌握需求分析、数据库设计、编码实现、测试等软件开发的流程,提高自身分析问题、解决问题的能力[2]。1.3课程设计任务本课程设计任务是通过开发一个数据库图书馆管理信息系统,学习数据库系统的设计与开发,采用VisualC++和Access2003等软件为开发工具。通过对计算机硬件和软件解决方案的论证,对应用领域进行调查分析,参考各种资料和进行数据库系统开发实践。在指导老师的帮助下,已经基本上成功地实现了设计任务书的要求,使得设计的数据库系统能够实现一般数据库的管理。2系统分析2.1功能需求分析该项目系统包含的功能有:图书信息管理、读者信息管理、借书服务管理,还书服务管理,其中每个功能由若干个相关联的子功能模块组成。如图所示:图2.1系统功能模块(1)图书信息管理“图书信息管理”功能模块用于管理图书的相关信息,包括浏览、查询、添加、修改和删除功能。在进行图书信息的添加时,系统会自动检测所添加的图书信息中的书籍条码在书籍表中是否已经存在,如果存在,会提示用户该书已经存在。在进行图书信息的删除时,要首先弹出提示窗口让用户确认是否删除,只有用户确认后才能进行图书信息的删除。在进行图书修改时,不准用户修改书籍条码,因为书籍条码作为数据库中书籍表的主键是不同书籍的唯一标识,不准修改书籍条码可以防止不经意将书籍条码改错;如果确实要修改书籍条码,可以通过数据库管理员来实现,也可以先将错误书籍条码信息删除再添加正确的书籍信息,这样在删除时会弹出提示窗口让用户确认是否删除,给用户以提示,防止意外错误[3]。其模块如下图所示:“图书信息查询”功能模块用于查询图书的相关信息,包括书籍条码(BOOK_ID)、书名、出版社、作者、出版日期、尚能否借出。(2)读者信息管理“读者信息管理”功能模块用于管理与读者相关的信息,包含的子功能模块如下图所示:“读者信息查询”功能模块用于查询读者的相关信息,包括读者条码、读者姓名、性别、证件号码。“读者信息添加”功能模块用于添加新近读者的相关信息,包括读者条码、读者姓名、性别、证件号码。“读者信息修改”功能模块用于修改已存读者的需修改的信息。“读者信息删除”功能模块用于删除读者的所有信息。读者信息管理读者信息查询读者信息添加读者信息修改读者信息删除图2.3“读者信息管理”功能模块图书信息管理图书信息查询图书入库图书信息修改图书注销图2.2“图书信息管理”功能模块(3)借书服务管理模块图书馆管理员通过此模块来进行借书操作。在进行借书信息的添加时,系统会自动检测该读者是否有权借书(过去借书历史中有超期未还的现象),所借书是否在馆内未被借出,只要有一个条件不满足,就会提示出错。“借书服务管理”用于登记读者借阅图书的记录并减少在库图书的库存量,登记内容包括读者编号、书籍条码(BOOK_ID)。(4)还书服务管理模块图书馆管理员通过此模块来进行还书操作。在进行还书信息的添加时,系统会自动检测此次还书是否在规定的时间内,若超期,则锁定该读者,并给出提示信息。“还书服务管理”功能用于登记读者归还图书的记录并增加在库图书的库存量,登记内容包括读者姓名、书籍条码(BOOK_ID)、借书日期、归还时间、超期天数。2.2系统流程图在用户需求分析的基础上把系统划分为三个子模块:读者信息管理、图书信息管理、图书流通管理。这三个模块之间,紧密结合,共享信息资源,形成一种完美的学校图书管理系统流程图[4]。如下图所示:读者信息管理管理员图书信息管理读者信息流通管理图书信息图书借阅图书归还图2.4系统流程图3数据库设计根据系统功能需求,数据库采用MicrosoftAccess2003建立。MicrosoftAccess2003是一个桌面级的数据库管理系统,简单易用,功能强大。支持的数据类型较丰富,操作简单,维护费用比较低[5]。3.1概念结构设计概念结构设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,是整个数据库设计的关键。系统基本E-R图(1)图书管理系统基本E-R图如下所示:图3.1系统基本E-R图(2)各子系统功能E-R图1、图书信息管理所需管理的内容E-R图如下所示:图3.2图书信息管理E-R图2、读者信息管理所需管理的内容E-R图如下所示:图3.3读者信息管理E-R图3、借、还书服务管理所需管理的内容E-R图如下所示:图3.4图书信息管理E-R图3.2逻辑结构设计逻辑设计阶段的任务是把概念结构转换为选用DBMS(数据库管理系统)所支持的模式[6]。根据模块的设计,以及根据规范化的设计要求,该系统的数据库设计如表3-1至3-5所示,表3-1主要用来存放管理员的登录信息,表3-2主要用来存放可借的书籍信息,表3-3用来存放读者信息,表3-4是借书信息表,表3-5是借还历史表。表3-1登录信息表(CLERK)字段名称数据类型字段属性字段大小描述必填字段索引是主键否Name文本8管理员ID是有(无重复)是PassWord文本8管理员密码是无否表3-2书籍信息表(BOOK)字段名称数据类型字段属性字段大小描述必填字段索引是主键否BOOK_ID文本30书籍条目是有(无重复)是BOOK_NAME文本50书籍名称是无否AUTHOR文本30作者否无否PRESS文本50出版社否无否PRESS_DATE文本50出版日期否无否FLAG_BORROW文本10是否可借是无否表3-3读者信息表(READER)字段名称数据类型字段属性字段大小描述必填字段索引是主键否READER_ID文本30读者条目是有(无重复)是NAME文本50姓名是无否IDCARD文本30身份证号否无否MAXNUM_CAN_BORROW数字—最大可借数否无否FLAG_BORROW文本10是否有权借是无否表3-4借书信息表(BORROW)字段名称数据类型字段属性字段大小描述必填字段索引是主键否ID自动编号—记录号是有(无重复)是READER_ID文本30读者条目是无否BOOK_ID文本30书籍条目是无否BORROW_DATE日期/时间—借书日期是无否B_CLERK_ID文本30借书管理员是无否表3-5借还书历史表(HISTORY)字段名称数据类型字段属性字段大小描述必填字段索引是主键否ID自动编号—记录号是有(无重复)是READER_文本30读者条目是无否IDBOOK_ID文本30书籍条目是无否续表字段名称数据类型字段属性字段大小描述必填字段索引是主键否BORROW_DATE日期/时间—借书日期是有(无重复)是RETURN_DATE日期/时间—还书日期是无否B_CLERK_ID文本30借书管理员是无否R_CLERK_ID文本30还书管理呗是无否4系统实现4.1登录模块实现(1)模块功能该功能模块实现的功能是实现管理员到图书管理系统的登录操作,登录信息(用户名、密码)。(2)界面设计【系统登录】对话框界面如图4.1所示。图4.1【系统登录】对话框界面其中主要控件的属性设置及功能如表4-1所示。表4-1对话框IDD_DIALOG_LOGIN中的主要控件控件类型ID属性设置ButtonIDC_CONFIRMCaption设为“登录”ButtonIDC_CANCELCaption设为“取消”StaticText默认Caption设为“请输入用户名和密码”StaticText默认Caption设为“用户名”StaticText默认Caption设为“密码”EditBoxIDC_LOGIN_NAMEStyles选中NumberEditBoxIDC_LOGIN_PASSWORD默认PictureIDC_STATICStyles选Frame(BLACK)PictureIDC_STATICStyles选Frame(BLACK)核心代码如下:voidCLoginDlg::OnConfirm(){CClerkDataSetmrsDataSet;/*声明记录集*/CStringmSqlStr;UpdateData(TRUE);if(m_strName.IsEmpty())/*判断用户名信息是否为空*/{AfxMessageBox(请输入用户名!);return;}if(!mrsDataSet.Open(AFX_DB_USE_DEFAULT_TYPE,mSqlStr)){AfxMessageBox(CLERK表打开失败!);return;}