语言课程设计图书信息管理系统说明书_第1页
语言课程设计图书信息管理系统说明书_第2页
语言课程设计图书信息管理系统说明书_第3页
语言课程设计图书信息管理系统说明书_第4页
语言课程设计图书信息管理系统说明书_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、*实践教学*兰州理工大学计算机与通信学院2010年春季学期计算机语言C 课程设计题 目:图书信息管理系统 专业班级: 姓 名: 学 号: 指导教师: 成 绩: 目 录摘 要1前 言2正 文31.问题描述32 .1、需求分析32、系统总体设.33.详细设计44.软件使用说明书7总 结9参考文献10致 谢11附件 部分原程序代码12摘 要建立一个“图书信息管理系统”,系统以菜单方式工作,编写存放有图书信息,包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。设计“图书信息管理系统”,使之能提供以下功能:系统以菜单方式工作;图书信息录入功能(图书信息用文件保存);图书信息浏览功能;查询和

2、排序功能:按书名查询、按作者名查询;图书信息的删除与修改。关键词:图书信息管理;录入;文件;浏览;排序;查询;测试;修改;删除; 前 言随着计算机技术的飞速发展,利用计算机来获得和处理信息是当今信息管理的一大特点。伴随计算机硬件的快速发展,有关信息管理的软件数据库系统软件也在迅猛发展着。图书馆是高等院校的重要组成部门,是教师和学生获取知识的重要场所。由于图书馆主要从事大量的图书资料的储存和流通。所以一直以来,计算机在图书馆的图书管理中得到了广泛的应用。本系统即是结合实际情况开发的图书资料管理系统。系统开发的主要任务是针对原来系统的时效性、数据的正确性、操作的方便性上的不足,解决图书流通上的问题

3、。实现图书信息管理的系统化,规范化和自动化,以最大程度提高操作人员的办公效率。正 文1. 问题描述由于教职工和学生人数的增加,藏书规模的扩大,使得图书借阅查询信息管理工作繁重,而且手工管理效率极低,急需一个软件系统解决这些问题。为了跟上时代潮流,规范管理,提高图书馆的管理水平和管理效率,为全校职工和学生提供方便、快捷、准确的图书信息服务,开发一个“图书信息管理系统”。2. 需求分析与总体设计一、系统需求分析1、 对信息进行条形码管理。2、 对成批数据的高效录入, 系统对录入的数据的合法性应做出有效性检查, 能够对数据进行增加、删除、修改等基本操作。3、 实现对数据的动态查询且查询速度快, 并能

4、够将数据以统一形式的报表打印输入。4、系统应该提供相应的代码维护功能。5、该系统应具有对数据库中重要数据的备份和恢复的功能。6、该系统应该采用用户匿名登录的方式, 以保护系统数据库的重要敏感数据。二、系统总体设计1:整体结构流程图概述本数据库管理系统主要由图书检索、图书管理、数据维护、图书统计、打印输出、系统维护六大模块组成, 各模块功能如下:1、主控模块主控模块的功能是控制各个分支模块,它是实现各模块功能的总控制台 2、图书检索模块是图书管理系统的重要模块之一,是读者快速查询图书的途径 本模块的功能是按书名、书号、作者、出版社、价格3、图书管理模块是图书管理员操作模块,读者是无权进入的。本模

5、块由读者编号和姓名查询、借出图书登记、归还图书登记和续借图书登记子模块构成,在“借出图书登记”中管理员对借出的图书进行登记,图书库中这本书的库存减少,而读者在归还图书的图书库中这本书库存增加。对超过规定日期未归还图书的读者进行计算罚金 。图书管理相当于图书管理人员日常的管理工作,即图书借阅、归还和续借等登记工作。4、数据维护模块是由图书管理员控制的模块,它由增加、修改和删除读者,增加、修改删除图书,浏览修改读者、浏览修改图书等程序组成。 在软件设计时考虑到读者编号、书名、书号是唯一的,因此,在修改读者或图书中,读者记录或图书记录一经登记“读者编号”和“姓名”便不能修改,在删除读者或图书时只要读

6、者有借出图书未还或库存图书原有数量与现有库存量不符便不能删除。5、数据统计模块由读者统计、图书统计、借出图书分类统计、到期未归还图书读者统计几部分组成。 6、打印输出模块由读者信息、打印借出图书、打印到期未归还图书的读者和打印图书简介卡片组成,本模块由图书管理员控制。7、退出系统退出系统模块由帮助和退出构成。3图书信息管理流程图图书信息管理书籍信息表读者信息表管理员信息表借阅图书表归还图书表编号书名作者出版日期价格 1.书籍信息表如表3-3-1所示 表3-3-1 图书信息表属性名数据类型长度允许空备注书名char50no作者char30no价格moneyyes出版社char50yes出版日期d

7、atetimeyes是否借阅char5no2.读者信息表如表3-3-2所示 表3-3-2 读者信息表属性名数据类型长度允许空备注编号 char10no主码姓名 char15no性别 char5yes男,女所属系 char30yes电话 char 20yes 电子邮件 char20yes备注 char20yes3.管理员信息表如表3-3-3所示 表3-3-2管理员信息表属性名数据类型长度允许空备注职工编号 char10no主码姓名 char15no性别 char5男,女 联系电话char20 4.借阅图书表如表3-3-4所示 表3-3-4借阅图书表属性名数据类型长度允许空备注ISBN char1

8、0no主码,外键图书(IBSN) 编号 char10no主码,外键读者(编号) 职工编号 char10no主码,外键管理员(职工编号) 书名 char50no 借书日期datetimeno 5.归还图书表如表3-3-5所示 表3-3-5归还图书表属性名数据类型长度允许空备注ISBN char10no主码,外键图书(IBSN) 编号 char10no主码,外键读者(编号) 职工编号 char10no主码,外键管理员(职工编号) 书名 char50no 还书日期datetimeno3. 3.4数据库实施 4.1数据库及表结构的创建 设本系统使用的数据库名为图书管理,根据已设计的关系模式及各模式的完

9、整性要求,现在就可以在SQL Server 2000数据库系统中实现这些逻辑结构。下面是创建数据库及基本表的SQL语句 1.建立数据库 create database 图书管理系统2.建立管理员表 create table 管理员(职工编号 char(5) primary key, 姓名 char(10) not null, 性别 char(5), 联系电话 int,)3.建立读者表 create table 读者( 编号 char(5) primary key, 姓名 char(5) not null, 性别 char(5), 所属系 char(10), 电话 int, 电子邮件 char(

10、5),备注 char(20),) 4.建立书籍表create table 书籍(ISBN char(5) primary key,书名 char(20) not null,条形码 char(5)unique,作者 char(10) not null,价格 int,出版社 char(10), 出版日期 datetime,类别 char(10) not null,)5.建立借阅图书表 create table 借阅图书(ISBN char(5) not null, 编号 char(5) not null, 职工编号 char(5) not null, 书名 char(20) not null, 借

11、书日期 datetime not null,6.建立归还图书表 create table 归还图书(ISBN char(5), 编号 char(5), 职工编号 char(5), 书名 char(20), 还书日期 datetime,4.2 用户表视图为了提高在表中搜索元组的速度,基于该用表关系图,可以定义出各种常见的用户表视图用来作为统计信息。如:1.图书信息 create view 图书信息asselect * from 图书where 是否借出 like12.读者信息 create view 读者信息(读者编号,姓名, ISBN, 书名 ,还书日期)asselect 读者.编号 ,姓名,

12、 ISBN, 书名 ,借书日期+30 from 读者,借阅图书where 读者.编号=借阅图书.编号4.3用SQL实现功能设计1.管理员操作(1)注册 insert into 管理员 values(#职工编号,#姓名,#性别,#联系电话) (2)注销 delete from 管理员 where 职工编号like#职工编号(3)增加读者 insert into 读者 values(#编号,#姓名,#性别,#所属系,#电话,#电子邮件,#备注) (4)删除读者 delete from 读者 where 编号like编号(5) 修改读者信息 update 读者 set 姓名=#姓名,电话=#电话 w

13、here 编号=编号(6)增加图书insert into书籍(ISBN,书名,作者,价格,出版社,出版日期,是否借出)values(#ISBN,#书名,#作者,#价格,#出版社,#出版日期,#是否借出)(7)删除图书 delete from 书籍 where .(8)修改图书信息 update 书籍 set书名= #书名,作者=#作者,价格=#价格 where.(9)读者借阅图书begin transactioninsert into 借阅图书( ISBN,学号,职工编号,书名,借书日期,应还日期)values (#ISBN,#学号,#职工编号,#书名,#借书日期,#应还日期)update 书

14、籍 set 是否借阅 =1where ISBN=#ISBNcommit(10)读者归还图书begin transactioninsert into 归还图书(ISBN,学号,职工编号,书名,还书日期)values (#ISBN,#学号,#职工编号,#书名,#还书日期)update 书籍set 是否借阅 =0where ISBN=#ISBN commit2.读者(1)注册insert into 读者(编号,姓名,性别, 所属系,电话,电子邮件,备注) values( #编号,#姓名,#性别,# 所属系,#电话,#电子邮件,#备注)(2)注销delete from 读者 where 编号like#

15、编号(3)查询图书信息select * from 图书信息 where ISBN=#ISBN(4)查询个人信息select * from 个人信息 where 编号like#编号 3.数据库的安全性 (1)grant all privileges on table 书籍,读者,管理员,借阅图书,归还图书 to 管理员 (2)grant select on view 图书信息,个人信息to 读者总 结本设计使用Microsoft SQL Server 2000创建后台数据库,实现对图书管理系统的功能操作。通过对信息输入、编辑(增加、删除、查询、修改)等功能完成对图书管理数据库的操作管理。本数据库

16、系统通过调试运行,结果表明该数据库具有可行性与可扩充性,但数据库技术范围还有待于进一步完善。通过将近一周的课设练习,让我认识到知识的迁移运用,理论应用实际和相互间的密切联系,感受到理论知识的重要,在今后的学习中一定会更加努力。体会到自己知识的缺乏,和个人能力的有限,只有通过同学和老师间的密切配合才能完成一项不错的工作。同时从中也体会到了学习中的乐趣,可以自由的创作自己喜欢的东西。为自己的辛苦付出得到回报而高兴不已。参考文献1 王珊 萨师煊数据库系统概论第四版 高等教育出版社,2006,52 赵增敏等SQL Server 2000 案例教程电子工业出版社2005.53 姚伯元毕业设计(论文)规范

17、化管理与培养学生综合素质中国高等教育网教学研究,2005-2-2致 谢设计期间,指导老师严肃的科学态度、严谨的治学精神、精益求精的工作作风深深地感染和激励着我。从课题的选择到项目的最终完成,都始终给予我细心的指导和不懈的支持。我由衷地感谢指导老师的大力帮助和支持,感谢我的同学与朋友,在我遇到各种各样复杂问题的时候,给与我鼓励和帮助,使我的分析问题和解决问题能力有了很大的提高。附件 部分原程序代码#include #include #include #define DATA_FILE datastruct bk_node;typedef struct bk_node *n_ptr;struct

18、bk_nodechar id16;char name32;char author16;char date16;char price16;n_ptr next;n_ptr clean_list(n_ptr list);n_ptr create_list(void);n_ptr create_node(void);void save_list(n_ptr list);n_ptr insert_node(n_ptr list,n_ptr node);n_ptr delete_node(n_ptr list,n_ptr node);n_ptr query_node(n_ptr list,char *i

19、d);void print_list(n_ptr list);void print_node(n_ptr node);n_ptr clean_list(n_ptr list)n_ptr pos,tmp;if(list=NULL) printf(列表已经为空!n); return NULL;pos=list;while(pos!=NULL) tmp=pos-next; free(pos); pos=tmp;printf(列表已经为空!n);return NULL;n_ptr create_list(void)FILE *fp;n_ptr list=NULL;n_ptr node;fp=fopen

20、(DATA_FILE,rb);if(fp=NULL) return list;while(1) node=malloc(sizeof(struct bk_node); if(fread(node,sizeof(struct bk_node),1,fp)=0) break; node-next=NULL; list=insert_node(list,node);return list;void save_list(n_ptr list)FILE *fp;n_ptr pos=list;fp=fopen(DATA_FILE,wb);while(pos!=NULL) fwrite(pos,sizeof

21、(struct bk_node),1,fp); pos=pos-next;printf(保存成功!n);fclose(fp);n_ptr create_node(void)n_ptr node;node=malloc(sizeof(struct bk_node);printf(编号:);gets(node-id);printf(书名:);gets(node-name);printf(作者:);gets(node-author);printf(出版日期(YY/MM/DD):);gets(node-date);printf(价格:);gets(node-price);node-next=NULL;

22、getchar();return node;n_ptr insert_node(n_ptr list,n_ptr node)n_ptr pos=list;if(list=NULL) list=node; return list; while(pos-next!=NULL) pos=pos-next;node-next=pos-next;pos-next=node;return list;n_ptr delete_node(n_ptr list,n_ptr node)n_ptr pos=list;n_ptr tmp;if(list=NULL) printf(列表为空!n); return lis

23、t;if(pos=node) tmp=pos-next; free(pos); printf(删除成功!n); return tmp;while(pos-next!=node & pos-next!=NULL) pos=pos-next;if(pos-next!=NULL) pos-next=node-next; free(node); printf(删除成功 n);elseprintf(没有找到记录!n);return list;n_ptr query_node(n_ptr list,char *id)n_ptr pos=list;while(pos!=NULL & strcmp(pos-i

24、d,id)!=0) pos=pos-next;if(pos=NULL) printf(列表为空!n);return pos;void print_list(n_ptr list)n_ptr pos=list;if(list=NULL) printf(列表为空!n); return;printf(%-10s,编号);printf(%-30s,书名);printf(%-15s,作者);printf(%-10s,出版日期);printf(%-10s,价格);printf(n);while(pos!=NULL) printf(%-10s,pos-id); printf(%-30s,pos-name); printf(%-15s,pos-author); printf(%-10s,pos-date); printf(%-10s,pos-price); printf(n); pos=pos-next;void print_node(n_ptr node)printf(编号:%sn,node-id);printf(书名:%sn,node-name);printf(作者:%sn,node-author);printf(出版日期:%sn,nod

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论