阅的问题,工作非常繁琐,需要大量的人力、物力和财力,极大的浪费了资源的略事而设计,它可以使管理员从繁重的手工操作中解脱出来。图书馆管理系统主要包括后台维护子系统,图书查询子系统等。
2.2 系统总体功能模块图
(1)后台维护子系统 ①用户信息管理
管理员通过数据库管理和维护系统可以对读者进行管理和维护。管理员可以对表中的信息进行删除、修改、更新等基本操作以管理 和维护读者信息。
在管理和维护这一部分时因为涉及到读者信息表,因此要使用存储过程和触发器来保证数据的一致性。 ②图书信息管理
新书入库、旧书报废、图书信息的修改。新书入库指对需求比较大的图书,如果数库中有,则增大其库存量,如果没有,则进购新书。旧书报废指因为人为因素(如借阅后丢失、损坏等)致使图书不能被继续借阅的,应从书库中清除掉。新书入库和旧书报废时, 应对该书库总数进行调按,尤其是当旧书报废后,若该书总数为零时,应自动将该书信息删除。我们还对图书进行了分类,如果因为某书的减少,导致该类图书的减少,则当该类图书总数为零时,系统也应自动将该图书类别信息删除。 ③管理员管理
管理员可以对管理员表中的信息进行插入、删除、修改、更新等基本操作以管理和维护读者信息。 ④留言信息管理
管理员通过管理与维护模块可以对留言板子系统进行管理和维护。管理员可以对表中的信息进行删除、修改、更新等基本操作以管理和维护留言板子系统。 在管理和维护这一部分时除了要对留言信息表进行维护,还要使与留言信息表相关联的数据表保持一致性。即当对与留言信息表相关的数据进行维护时,也要使留言信息表中相关信息与其同步,这就要用到存储过程。这样才能很好的保证数据的一致性。
3 后台维护系统设计详细设计
3.1 后台维护系统设计
后台数据库的维护(如:管理员管理、读者信息管理、图书信息管理)、系统数据库
设计。
3.2 数据库管理和维护
数据库管理和维护的功能是专为管理人员设计和制作的,创作的主要宗旨是为管理人
员提供方便、快捷的管理和维护整个系统数据的功能。
它除了要实现管理图书信息信息外,还可以对其他数据提供必要的管理和维护功能。管理员可以对用户信息,留言板信息等进行管理,包括对注册用户的管理(删除,修改,更新用户基本信息等等),还要对读者提出问题或意见,定期公布的最新图书信息数据添加,删除,修改等进行基本的管理和维护。
在数据库管理和维护系统中,管理员可以输入所要维护的信息的条件,通过查询功能查
找出符合条件的信息,从而对数据进行管理和维护。
3.3 数据库系统存储
添加借书续借某数的信息,int,传入《《SingleBookId、ReaderId、BorrowedDate、IfBorrowedWidthCd、ContinueBorrowedCount、ShouldReturnedDate》》还书管理添加还书信息。Int,传入id、PracReturnedDate、ReturnProcess、AmercedMoney、AmercementProcess丢失登记添加丢书信息。Int,传入SingleBookId、ReaderId、RegisteredDate。报表查询获得所有当前借书的信息,DataSet,《《Rorrowedid(不显示),SingleBookId(不显示)、Library、ISBN、IsbnMore、BarCode、BookName、Authors、Press、PublishedDate、Price、CdCount、Catelog、Series、Subject、AddedDate、TotalCount、CanBeBorrowedCount、在馆几本、remark、ReaderId、ReaderStyle、ReaderName、ReaderSex、BorrowedDate、ShouldReturnedDate ShouldAmercedMoney》》获得所有过去借书的历史信息,DataSet《《同当前+ContinueBorrowedCount、PracReturnedDate、ReturnProcess、AmercedMoney、AmercementProcess》》获得所有丢数记录信息,DataSet,《SingleBookId、BookName、Press、Price、AddedDate、TotalCount、BorrowedDate、ShouldReturnedDate、RegisteredDate、Remark》》 获得是否有罚款的是否超期未还的?通过过滤 获得时间段内的获得某一类图书的获得某一读者的获得某一类读者的获得某一图书系列的获得某图书馆的获得某一读者的借阅的历史情况。
3.4数据库系统功能要求分析
命令按钮类的控件冒号
1) Caption属性冒号用来显示在控件上的标题。 2) Enable属性冒号控制控件的激活状态灰色或可用。
3) Appearance属性冒号值为1时,则以3D效果显示该控件,0则不然。 4) Backcolor属性冒号用来改变在按钮上显示图像的背景色。 5) Cancel属性冒号该属性决定按钮是否为1个”取消”按钮。 6) Default属性:决定哪1个命令按钮控件是窗体的缺省命令按钮. 7) Font属性:控制各种文字字体类型. 8) Left,top,_confirm(void) {
printf(\按任意键返回--\
getch(), }
*上面是返回前请求确认的函数.以便在返回前观察结果* int search_book(void) { int n.i,
printf(\请输入图书序号:\ scanf(\ for(n=0,n<100,n++) {
if (books[n].id==i) {
printf(\书名:%s\[n].name), printf(\作者:%s\[n].author), printf(\存数:%d of \[n].store), printf(\[n].total), return n, } }
printf(\输入错误或无效图书序号.\ return -1, }
*上面的函数是在数组中找到图书号匹配的记录.显示其信息并返 回数组下标.如果找不到相应记录则提示错误并返回-1.* void book_out(void) { int n.s.l.d,
page_title(\借阅图书\
if((n=search_book())!=-1&&books[n].store>0) {
printf(\请输入借书证序号:\ scanf(\
printf(\请输入可借天数:\ scanf(\ for(l=0,l<10,l++) {
if(books[n].usr[l]==0) {
books[n].usr[l]=s, books[n].days[l]=d, break, } }
books[n].store--, }
if(n!=-1&&books[n].store==0) printf(\此书已经全部借出. \
return_confirm(), }
*上面是借书的函数.首先调用找书函数* void book_in(void) { int n.s.l,
page_title(\归还图书\
if ((n=search_book())!=-1&&books[n].store<books[n].total) {
printf(\借阅者图书证列表:\ for(l=0,l<10,l++)
if (books[n].usr[l]!=0)
printf(\[%d] - %d\[n].usr[l].books[n].days[l]),
相关推荐: