图书管理系统数据库设计MYSQL实现计算机数据库_计算机-数据库.pdf

上传人:Che****ry 文档编号:95508069 上传时间:2023-08-25 格式:PDF 页数:23 大小:1.02MB
返回 下载 相关 举报
图书管理系统数据库设计MYSQL实现计算机数据库_计算机-数据库.pdf_第1页
第1页 / 共23页
图书管理系统数据库设计MYSQL实现计算机数据库_计算机-数据库.pdf_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《图书管理系统数据库设计MYSQL实现计算机数据库_计算机-数据库.pdf》由会员分享,可在线阅读,更多相关《图书管理系统数据库设计MYSQL实现计算机数据库_计算机-数据库.pdf(23页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、 图书管理系统数据库设计 一、系统概述 1、系统简介 图书管理是每个图书馆都需要进行的工作。一个设计良好的图书管理系统数据库能够给图书管理带来很大的便利。2、需求分析 图书管理系统的需求定义为:1.学生可以直接通过借阅终端来查阅书籍信息,同时也可以查阅自己的借阅信息。2.当学生需要借阅书籍时,通过账号密码登陆借阅系统,借阅系统处理学生的借阅,同时修改图书馆保存的图书信息,修改被借阅的书籍是否还有剩余,同时更新学生个人的借阅信息。3.学生借阅图书之前需要将自己的个人信息注册,登陆时对照学生信息。4.学生直接归还图书,根据图书编码修改借阅信息 5.管理员登陆管理系统后,可以修改图书信息,增加或者删

2、除图书信息 6.管理员可以注销学生信息。通过需求定义,画出图书管理系统的数据流图:数据流图 学生查询图书信息登陆借阅学生信息借阅信息归还借阅信息学生注册学生信息学生学生管理员登陆管理员信息图书管理学生管理图书信息学生信息管理员 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定

3、义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅二、系统功能设计 画出系统功能模块图并用文字对各功能模块进行详细介绍。系统功能模块图:图书管理系统借阅者模块管理员模块访问模块查询图书借阅图书归还图书查询图书修改图书信息增加/删除图书查询借阅信息注册个人信息查询借阅信息删除学生信息管理员登陆借阅者登陆 三、数据库设计方案图表 1、系统 E-R 模型 总体 E-R图:系统数据库能够给图书管理带来很大的便利需求分析图

4、书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅学生借阅图书管理员管理 精细化的局部 E-

5、R图:学生借阅-归还 E-R图:学生学生ID年级年龄性别专业诚信级借阅图书图书ID书名出版社分类数量作者登记日期图书借阅表学生ID图书ID归还学生ID图书ID归还时间借阅时间图书归还表处罚表图书ID学生ID超期处罚金额 管理员 E-R图:系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息

6、通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅管理员ID号姓名年龄所属单位联系电话管理管理学生图书属于图书类别类别编号类别名称 2、设计表 给出设计的表名、结构以及表上设计的完整性约束。student:列名 数据类型 是否为空/性质 说明 stu_id int not null/PK 标明学生唯一学号 stu_name varchar not null 学生姓名 stu_sex varchar no

7、t null 学生性别 stu_age int not null 学生年龄 stu_pro varchar not null 学生专业 stu_grade varchar not null 学生年级 stu_integrity int not null/default=1 学生诚信级 book:列名 数据类型 是否为空/性质 说明 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图

8、书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅book_id int not null/PK 唯一书籍序号 book_name varchar not null 书籍名称 book_author varchar not null 书籍作者 book_pub varchar not null 书籍出版社 b

9、ook_num int not null 书籍是否在架上 book_sort varchar not null 书籍分类 book_record datatime null 书籍登记日期 book_sort:列名 数据类型 是否为空/性质 说明 sort_id varchar not null/PK 类型编号 sort_name varchar not null 类型名称 borrow:存储学生的借书信息 列名 数据类型 是否为空/性质 说明 student_id varchar not null/PK 学生编号 book_id varchar not null/PK 书籍编号 borrow_

10、date datatime null 借书时间 expect_return_date datetime null 预期归还时间 return_table:存储学生的归还信息 列名 数据类型 是否为空/性质 说明 student_id varchar not null/PK 学生编号 book_id varchar not null/PK 书籍编号 borrow_date datetime null 借书时间 return_date datatime null 实际还书时间 ticket:存储学生的罚单信息 列名 数据类型 是否为空/性质 说明 student_id varchar not nu

11、ll/PK 学生编号 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册

12、个人信息查询图书归还图书借阅book_id varchar not null/PK 书籍编号 over_date int null 超期天数 ticket_fee float null 处罚金额 manager:列名 数据类型 是否为空/性质 说明 manager_id varchar not null/PK 管理员编号 manager_name varchar not null 管理员姓名 manager_age varchar not null 管理员年龄 manager_phone varchar not null 管理员电话 3、设计索引 给出在各表上建立的索引以及使用的语句。stud

13、ent:1.为 stu_id 创建索引,升序排序 sql:create index index_id on student(stu_id asc);2.为 stu_name创建索引,并且降序排序 sql:alter table student add index index_name(stu_name,desc);插入索引操作和结果如下所示:mysql create index index_id on student(stu_id asc);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 mysql alter table

14、student add index index_name(stu_name desc);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数

15、据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅mysql book:1.为 book_id 创建索引,升序排列 sql:create index index_bid on book(book_id);2.为 book_record 创建索引,以便方便查询图书的登记日期信息,升序:sql:create index index_brecord on book(book_record);插入索引的操作和结果如下所示:mysql crea

16、te index index_bid on book(book_id);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 mysql create index index_brecord on book(book_record);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 borrow:1.为 stu_id 和 book_id 创建多列索引:sql:create index index_sid_bid on borrow(stu_id asc,book_

17、id asc);插入索引的操作和结果如下所示:mysql create index index_sid_bid on borrow(stu_id asc,book_id asc);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 return_table:1.为 stu_id 和 book_id 创建多列索引:sql:create index index_sid_bid on return_table(stu_id asc,book_id asc);系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以

18、直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅插入索引的操作和结果如下所示:mysql create index in

19、dex_sid_bid_r on return_table(stu_id asc,book_id asc);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 ticket:1.为 stu_id 和 book_id 创建多列索引:sql:create index index_sid_bid on ticket(stu_id asc,book_id asc);插入索引的操作和结果如下所示:mysql create index index_sid_bid on ticket(stu_id asc,book_id asc);Query

20、 OK,0 rows affected Records:0 Duplicates:0 Warnings:0 manager:1.为 manager_id创建索引:sql:create index index_mid on manager(manager_id);插入索引的操作和结果如下所示:mysql create index index_mid on manager(manager_id);Query OK,0 rows affected Records:0 Duplicates:0 Warnings:0 4、设计视图 给出在各表上建立的视图以及使用的语句。1.在表 student 上创建计

21、算机专业(cs)学生的视图 stu_cs:sql:create view stu_cs as 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介

22、绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅 select*from student where pro=cs;操作和结果:mysql create view stu_cs as select*from student where stu_pro=cs;Query OK,0 rows affected 2.在表 student,borrow和 book上创建借书者的全面信息视图 stu_borrow:sql:create view stu_borrow as select,borrow_date,adddate(borrow_date,3

23、0)expect_return_date from student,book,borrow where =and =;操作和结果:mysql create view stu_borrow as select,borrow_date,adddate(borrow_date,30)expect_return_date from student,book,borrow where =and =;Query OK,0 rows affected 3.创建类别 1的所有图书的视图 cs_book:sql:create view cs_book as select*from book 系统数据库能够给图书

24、管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅 where

25、in (select from book_sort where sort_id=1);操作和结果显示:mysql create view cs_book as select*from book where in (select from book_sort where sort_id=1);Query OK,0 rows affected 4.创建个人所有借书归还纪录视图 stu_borrow_return:sql:create view stu_borrow_return as select,from student,book,return_table where =and =;5、设计触发

26、器 给出在各表上建立的触发器以及使用的语句。1.设计触发器 borrow,当某学生借书成功后,图书表相应的图书不在架上,变为 0:sql:create trigger borrow 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书

27、管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅 after insert on borrow for each row begin update book set book_num=book_num 1 where book_id=;end 操作与结果显示:mysql delimiter$mysql create trigger trigger_borrow -after insert on borrow -for each row -begin -up

28、date book set book_num=book_num-1 -where book_id=;-end -$Query OK,0 rows affected 在插入表 borrow 之前,book_id=1 的图书还在架上,为 1:学生 1 借了这本书后,在 borrow 中插入了一条记录:在 borrow 中插入这条记录后,book_id=1的图书,不在架上,为 0:2.设计触发器 trigger_return,还书成功后,对应的书籍 book_num变为 1:sql:create trigger trigger_return after insert on return_table

29、系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图

30、书借阅 for each row begin update book set book_num=book_num+1 where book_id=;end 还书时在 return_table插入表项:此时图书归还架上:3.定义定时器(事件)eventJob,每天自动触发一次,扫描视图 stu_borrow,若发现当前有预期归还时间小于当前时间,则判断为超期,生成处罚记录,这个定时器将每天定时触发存储过程 proc_gen_ticket:sql:create event if not exists eventJob on schedule every 1 DAY /*每天触发*/on compl

31、etion PRESERVE do call proc_gen_ticket(getdate();/*调用存储过程*/set global event_scheduler=1;alter event eventJob on completion preserve enable;/*开启定时器*/操作和结果显示:1).学生 1 借了图书 1,生成借书记录 stu_borrow视图,如下:2).当他在 1 月 27 日前还书时,没有生成罚单:3).当他在 1 月 27 日后还书时,生成罚单:系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息

32、同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅4.设计触发器 trigger_credit,若处罚记录超过 30 条,则将这个学生的诚信级设置为 0

33、,下次不允许借书:sql:create trigger trigger_credit after insert on ticket for each row begin if(select count(*)from ticket where stu_id=30 then update student set stu_integrity=0 where stu_id=;end if;end 操作和结果显示,测试时选择插入 ticket项大于 3,因为 30 太大了,不容易测试:学生 1 超过 3 次超期归还图书后,产生了 4 条罚单:此时触动触发器 trigger_credit,将学生 1 的诚

34、信级设置为 0:四、应用程序设计与编码实现 1、系统实现中存储函数和存储过程的设计 要求给出功能描述和代码。1.设计存储过程,产生罚单 proc_gen_ticket:当日期超过预定归还日期时,产生罚单,并将记录写入表 ticket中,这个存储过程在定时器 eventJob 中调用:sql:create procedure proc_gen_ticket(in currentdate datetime)系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学

35、生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅BEGIN declare cur_date datetime;set cur_date=currentdate;replace into ticket(stu_id,book_id,ov

36、er_date,ticket_fee)select stu_id,book_id,datediff(cur_date,*datediff(cur_date,from stu_borrow where cur_date;end 操作和结果显示:1).学生 1 借了图书 1,生成借书记录 stu_borrow视图,如下:2).当他在 1 月 27 日前还书时,没有生成罚单:3).当他在 1 月 27 日后还书时,生成罚单:2.设计学生注册信息存储过程:学生注册信息 stu_register sql:create procedure stu_register(in stu_id int,in stu

37、_name varchar(20),in stu_sex varchar(20),in stu_age int,in stu_pro varchar(20),in stu_grade varchar(20)begin insert into student(stu_id,stu_name,stu_sex,stu_age,stu_pro,stu_grade)values(stu_id,stu_name,stu_sex,stu_age,stu_pro,stu_grade);end 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以

38、查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅3.设计管理员注册信息存储过程:ma_register sql:create procedure ma_regi

39、ster(in ma_id int,in ma_name varchar(20),in ma_age int,in ma_phone int)BEGIN insert into manager values(ma_id,ma_name,ma_age,ma_phone);END 4.借书过程的实现:1)设计存储函数,func_get_credit,返回学生的诚信级:create function func_get_credit(stu_id int)returns int begin return(select stu_integrity from student where =stu_id);

40、end 2)设计存储函数,func_get_booknum,返回书籍是否在架上:create function func_get_booknum(book_id int)returns int begin return(select book_num from book where =book_id);end 3)设计存储过程 proc_borrow,调用 func_get_credit和 func_get_booknum,判断这个学生诚信度和书籍是否在架上,若为真,则借书成功,在 borrrow 表中插入纪录;否则提示失败:create procedure proc_borrow(in st

41、u_id int,in book_id int,in borrow_date datetime)begin if func_get_credit(stu_id)=1 and func_get_booknum(book_id)=1 then 系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信

42、息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅 insert into borrow values(stu_id,book_id,borrow_date);else select failed to borrow;end if;end 实验操作与结果显示:borrow 纪录为空:执行函数,学生 1 借图书 2:call proc_borrow(1,2,now();学生 1 的诚信级为 0:借书失败

43、:修改学生 1 诚信级为 1:此时借书成功:5.还书存储过程 proc_return:当还书时,查看是否书是否超期,即查询 ticket表项,当发现超期,提示交罚单后再次还书,如没有超期,则纪录归还项目到 return_table中,并且删除借书纪录(以免还书后定时器仍然扫描这个纪录):sql:create procedure proc_return(in stu_id int,in book_id int,in return_date datetime)begin DECLARE borrowdate datetime;系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学

44、生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅 if(select payoff from ticket whe

45、re =stu_id and=book_id)=1 then/*判断是否交了罚单,1 表示没有交*/select please pay off the ticket;else/*纪录归还项目到 return_table中,并且删除借书纪录*/set borrowdate=(select borrow_date from borrow where =stu_id and =book_id);insert into return_table values(stu_id,book_id,borrowdate,return_date);delete from borrow where =stu_id

46、and =book_id;end if;end 实验操作与结果显示:学生 1 借了图书 2:超期产生了罚单,没有交罚单,payoff=1:此时调用还书过程:call proc_return(1,2,now();提示交罚单:交罚单,调用 proc_payoff:call proc_payoff(1,2);交罚单成功,payoff=0;此时再次调用还书过程:call proc_return(1,2,now();还书成功,在 return_table生成了还书纪录:系统数据库能够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息

47、当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅 6.交罚单存储过程:修改罚单中 payoff段为 0,表明罚单已交:create procedure proc_payoff(i

48、n stuid int,in bookid int)begin update ticket set payoff=0 where =stuid and =bookid;select succeed;end 交罚单,调用 proc_payoff:call proc_payoff(1,2);交罚单成功,payoff=0;2、功能实现 按各功能模块进行描述。要求:画出流程图并给出实现代码。创建学生统一账户,账户名:student_account,并且授予权限:sql:create user student_accountlocalhost;grant insert,select on student

49、 to student_accountlocalhost;grant select on book to student_accountlocalhost;grant insert,select on borrow to student_accountlocalhost;grant insert,select on return_table to student_accountlocalhost;grant select on ticket to student_accountlocalhost;创建管理员统一账户,账户名:manager_account,并且授予全部权限:sql:系统数据库能

50、够给图书管理带来很大的便利需求分析图书管理系统的需求定义为学生可以直接通过借阅终端来查阅书籍信息同时也可以查阅自己的借阅信息当学生需要借阅书籍时通过账号密码登陆借阅系统借阅系统处理学生的借阅需要将自己的个人信息注册登陆时对照学生信息学生直接归还图书根据图书编码修改借阅信息管理员登陆管理系统后可以修改图书信息增加或者删除图书信息管理员可以注销学生信息通过需求定义画出图书管理系统的数据流图数据管理员登陆图书管理学生管理管理员学生信息二系统功能设计画出系统功能模块图并用文字对各功能模块进行详细介绍系统功能模块图图书管理系统借阅者模块管理员模块访问模块查询借阅信息注册个人信息查询图书归还图书借阅cre

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com