资源描述:
《学校图书借阅管理系统数据库设计.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数据库课程设计报告学校图书借阅管理系统学生姓名:郭晓东学号:2010508033专业年级:计算机科学与技术10级指导教师:朱东芹目录一、结构设计31、逻辑结构设计32、关系图53、物理结构设计54、关系模式7二、存储过程7三、触发器9四、视图脚本12五、数据库恢复与备份12数据库设计说明书一、结构设计1、逻辑结构设计(1)总体E-R图如图1图1读者E-R图如图2图2图书E-R图如图3图3权限设置E-R图如图4图4权限设置E-R图如图5图5权限设置E-R图如图6图62、关系图关系图如图7图73、物理结构设计Tb_r
2、eader读者表:属性名类型备注说明readeridVarchar(10)主键读者idrnameVarchar(20)不允许空姓名sexVarchar(2)不允许空(‘男’or’女’)性别gradeVarchar(1)不允许空年级ProfessionVarchar(20)不允许空专业ifeffectivetinyint不允许空(1of0)是否有效emailVarchar(20)允许空邮箱Tb_manager管理员表:属性名类型备注说明manageridVarchar(10)主键管理员idloginnaneVarc
3、har(20)不允许空登录名passwordVarchar(20)不允许空密码Tb_borrow借阅表:属性名类型备注说明borrowidint主键(自增)idbookidVarchar(10)不允许空书号readeridVarchar(10)不允许空读者号manageridVarchar(10)不允许空管理员号borrowTimeSmalldatetime不允许空借书时间backTimeSmalldatetime允许空(backTime>=borrowtime)还书时间ifreborrowtinyint不允许空
4、(1or0)是否续借Tb_book图书表:属性名类型备注说明bookidVarchar(10)主键书号bnameVarchar(20)不允许空书名typeVarchar(20)允许空类型authorVarchar(20)允许空作者pricefloat允许空价格publishVarchar(20)允许空出版社quantityTinyint不允许空总数remainTinyint不允许空(remain<=quantity)剩余Tb_punishment超期处罚表:属性名类型备注说明punishmentidint主键(自
5、增)idreaderidVarchar(10)不允许空读者号bookidVarchar(10)不允许空书号dayssmallint不允许空超期天数bmoneyfloat不允许空罚款金额Tb_purview管理员权限设置表:属性名类型备注说明manageridVarchar(10)主键管理员号systemsettinyint不允许空(1or0)系统设置权限readersettinyint不允许空(1or0)读者权限booksettinyint不允许空(1or0)图书管理权限borrowbacktinyint不允许空
6、(1or0)图书借还权限systemquerytinyint不允许空(1or0)系统查询权限4、关系模式Tb_reader(readerid,rname,sex,grade,profession,email,ifeffective)Tb_borrow(borrowid,readerid,bookid,managerid,borrowTime,backTime,ifreborrow)Tb_manager(managerid,loginname,password)Tb_book(bookid,bname,type,a
7、uthor,publish,price,quantity,remain)Tb_punishment(punishmentid,readerid,bookid,days,bmoney)Tb_purview(managerid,systemset,readerset,bookset,borrowback,systemquery)二、存储过程创建存储过程,输入读者id查询出书名、借阅时间、归还时间、管理员id、是否续借情况createprocedurep@readerid_invarchar(10),@bookid_i
8、nvarchar(10),@bname_outvarchar(20)output,@borrowTime_outdatetimeoutput,@backTime_outdatetimeoutput,@managerid_outvarchar(10)output,@ifreborrow_outtinyintoutputasselect@bname_out=bname,@bo