图书管理系统触发器和存储过程.docx
- 文档编号:27907204
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:14
- 大小:16.51KB
图书管理系统触发器和存储过程.docx
《图书管理系统触发器和存储过程.docx》由会员分享,可在线阅读,更多相关《图书管理系统触发器和存储过程.docx(14页珍藏版)》请在冰豆网上搜索。
图书管理系统触发器和存储过程
图书馆管理系统数据库创建数据库和数据表
(
'',
'f:
\\',
10240,
1024
)
(
'',
'f:
\\',
1024,
1024
)
/*创建数据表:
图书信息表,读者信息表,用户表,读者借阅表,读者还书表等*/
图书信息表
(
(30)分类号
(50)书名
(20)作者
(30)出版社
出版日期
(20)类别
总量
0借出量默认值为零
()创建“分类号”为主键
)
读者信息表
(
(10)读者编号
(20)姓名
(2)(('男','女'))性别只能在“男”和“女”之间选择
读者年龄
(15)电话/手机
(20)(('本科生','研究生','教师'))读者类型只能在“本科生”,“研究生”,“教师”之间选择
()创建“读者编号”为主键
)
读者借阅信息表
(
(10)读者编号
(30)分类号
借阅日期
应还书日期
0续借次数默认为次
图书超期天数
()创建“读者编号,分类号”为主键
()()创建“读者编号”为外部键
()()创建“分类号”为外部键
)
用户表
(
(10)用户
(10)用户密码
(20)用户名
()创建用户为主键
)
(
(10),
(20)姓名
(2)(('男','女'))性别只能在“男”和“女”之间选择
读者年龄
(30)分类号
(50)书名
(20)作者
(20)图书类别
(30)出版社
1记录读者借借阅同一本书的次数
还书时间
()创建主键
()(),
()()创建外码
)
图书馆管理系统数据库触发器的创建
借书要求(书本没有库存,则无法进行借书操作)
(<)
'借阅失败!
'
'对不起,此书已经没有库存,无法进行本次借书操作!
'
借书要求(读者最多借阅量)
假定教师最多只能借十本,本科生最多只能借五本书,研究生最多可以借八本书
(10)
获得教师编号
'教师'
统计教师借书总量并做相应处理
(*)
(>10)假定教师最多只能借十本书
'借阅失败!
'
'对不起,你的借阅总量已经达到本,无法进行本次借书操作!
请归还部分书籍后,再进行下次借书操作!
'
'本科生'
(*)
(>5)假定本科生最多只能借五本书
'借阅失败!
'
'对不起,你的借阅总量已经达到本,无法进行本次借书操作!
请归还部分书籍后,再进行下次借书操作!
'
'研究生'
(*)
(>8)假定研究生最多只能借八本书
'借阅失败!
'
'对不起,你的借阅总量已经达到本,无法进行本次借书操作!
请归还部分书籍后,再进行下次借书操作!
'
续借次数要求
假定教师最多允许续借四次,本科生最多允许续借两次,研究生最多可以续借三次
'教师'
(>4)教师最多允许续借四次
'续借失败!
'
'对不起,你的续借次数已经达到了四次,已经无法再续借!
'
'本科生'
(>2)本科生最多允许续借两次
'续借失败!
'
'对不起,你的续借次数已经达到了两次,已经无法再续借!
'
'研究生'
(>3)研究生最多允许续借三次
'续借失败!
'
'对不起,你的续借次数已经达到了三次,已经无法再续借!
'
读者还书信息入表
(10)(30)
1
1
图书信息更改过程
1
判断表中该读者是否已借过同样一本书籍
(>0)>0说明该读者过去借过同一本书
1
1
向表中插入信息
第一部分(主码先入)
()
(())
第二部分(读者、书本信息)
()
()
()
()
()
()
()
图书馆管理系统数据库存储过程的创建
读者借阅图书存储过程
(10)(30)
(50)
判断读者是否已经借阅同一本书,如果已有借阅记录,则不能进行借书操作
(*)
'对不起,你已经借阅了同一本图书,故而无法进行此次借书操作,请核实!
'
图书信息更改
1
读者借阅过程
()
(())
输出借书成功信息
(8)
'编号为'',姓名为''的读者,于'(())+'年'(())+'月'(())+'日'(())+'时'(())+'分'(())+'秒,成功地从图书馆借出《''》一书!
'读者借书成功信息
读者还书存储过程
(10)(30)
(50)
判断读者是否借阅此书,如果没有借阅此书,则不能进行还书操作
(*)
'对不起,你没有借阅此书,故而无法进行此次还书操作,请核实!
'
读者还书过程
"图书信息更改过程在触发器中"
输出还书成功信息
(8)
'编号为'',姓名为''的读者,于'(())+'年'(())+'月'(())+'日'(())+'时'(())+'分'(())+'秒,成功地向图书馆归还《''》一书!
'读者还书成功信息
读者续借图书存储过程
(10)(30)
(50)
(1)
判断读者是否借阅此书,如果没有借阅此书,则不能进行续借操作
(*)
'对不起,你没有借阅此书,故而无法进行此次续借操作,请核实!
'
读者续借图书过程
11()续借一次后,重新计入时间
输出续借成功信息
(8)
'编号为'',姓名为''的读者,于'()+'年'()+'月'()+'日'()+'时'()+'分'(())+'秒,成功地续借《''》一书,续借次数共为''次!
'读者续借成功信息
读者查询借阅图书情况存储过程
(10)
(50),
(('T')>0)
以读者编号为表名创建临时性数据表
(
读者编号(10),
姓名(8),
书名(50),
图书类别(20),
借书日期,
最后续借日期,
本次借阅还剩天数,
续借次数,
是否超期
(2)
)
向临时表中插入数据
第一部分(插入子查询)
(书名,图书类别,借书日期*最后续借日期,*/续借次数)
**
第二部分
(8)
读者编号,姓名
第三部分(计算最后续借到超期还剩天数,并插入对应列)
(*)1获得表中的记录总数
(<)
1最后续借日期书名
书名
(
(1)书名
)
30(())读者一次借阅可阅读图书达30天
判断最后一次续借到现在是否超期
(<0)
是否超期='是'书名
是否超期='否'书名
本次借阅还剩天数书名
1
显示借阅图书情况的信息:
姓名、书名、图书类别、借书日期、最后续借日期、续借次数
*
读者检索的图书信息存储过程
(50)
(30)(50)
'%''%'
(
图书分类号(30),
书名(50),
出版社(30),
作者(10),
出版日期,
图书总量,
图书余量
)
(*)1
(<)
从表中抽取第行记录进行分析
1(
(1))
((*))
1
'你所检索的图书信息如下:
'
*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 触发器 存储 过程