1、学校图书借阅管理系统数据库设计数据库课程设计报告学校图书借阅管理系统 学生姓名: 郭 晓 东 学 号: 2010508033 专业年级: 计算机科学与技术10级 指导教师: 朱 东 芹 数据库设计说明书一、结构设计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_reader读者表:属性名类型备注说明readeridVarchar(10)主键读者idrnameVarchar(20)不允许空姓名sexVarchar(2)不允许空(男
2、or 女)性别gradeVarchar(1)不允许空年级ProfessionVarchar(20)不允许空专业ifeffectivetinyint不允许空(1 of 0)是否有效emailVarchar(20)允许空邮箱Tb_manager管理员表:属性名类型备注说明manageridVarchar(10)主键管理员idloginnaneVarchar(20)不允许空登录名passwordVarchar(20)不允许空密码Tb_borrow借阅表:属性名类型备注说明borrowidint主键(自增)idbookidVarchar(10)不允许空书号readeridVarchar(10)不允许空
3、读者号manageridVarchar(10)不允许空管理员号borrowTimeSmalldatetime不允许空借书时间backTimeSmalldatetime允许空(backTime=borrowtime)还书时间ifreborrowtinyint不允许空(1 or 0)是否续借Tb_book图书表:属性名类型备注说明bookidVarchar(10)主键书号bnameVarchar(20)不允许空书名typeVarchar(20)允许空类型authorVarchar(20)允许空作者pricefloat允许空价格publishVarchar(20)允许空出版社quantityTiny
4、int不允许空总数remainTinyint不允许空(remain30 begin if ifreborrow=1 begin if days60 begin select days1=days-60 select bmoney=days1*0.1 insert into tb_punishment(readerid,bookid,days,bmoney) values(readerid,bookid,days1,bmoney) update tb_reader set ifeffective=0 where readerid=readerid end end if ifreborrow=0
5、begin select days1=days-30 select bmoney=days1*0.1 insert into tb_punishment(readerid,bookid,days,bmoney) values(readerid,bookid,days1,bmoney) update tb_reader set ifeffective=0 where readerid=readerid end endend4、读者是否有效触发器,当读者借书时,检查reader表中的ifeffective属性,若为0则说明有超期罚款,不能借书。create trigger t_ifcanborro
6、won tb_borrow for insertas declare readerid varchar(10), ifeffective tinyintselect readerid=readerid from insertedselect ifeffective=ifeffective from tb_reader where readerid=readeridif ifeffective=0beginprint 您有超期罚款!rollback transactionend四、视图脚本1、创建视图查询各种图书的书号、书名、总数和在册数。create view view_queryas sel
7、ect bookid,bname,quantity,remain from tb_book2、创建视图查询读者的超期罚款情况,其中包括读者号,读者姓名,罚款书名,罚款金额。create view view_readeras select tb_punishment.readerid,rname,bname,bmoney from tb_punishment,tb_book,tb_reader where tb_punishment.bookid=tb_book.bookid and tb_punishment.readerid=tb_reader.readerid五、数据库恢复与备份数据库的完
8、全备份use db_librarygobackup database db_library to disk=H:LibarySystembackupf_db_librarywith initGo数据库的恢复use db_librarygobackup database db_library to disk=H:LibarySystembackupf_db_librarywith initGo数据库差异备份use db_librarygobackup database db_library to disk=H:LibarySystembackupd_db_librarywith differentialGo数据库的恢复use mastergorestore database db_library from disk=H:LibarySystembackupf_db_librarywith norecoverygorestore database db_library from disk=H:LibarySystembackupd_db_librarywith replacego
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1