数据库课程设计之SQL_Server图书馆管理系统.pdf

上传人:索**** 文档编号:76198009 上传时间:2023-03-08 格式:PDF 页数:14 大小:1.16MB
返回 下载 相关 举报
数据库课程设计之SQL_Server图书馆管理系统.pdf_第1页
第1页 / 共14页
数据库课程设计之SQL_Server图书馆管理系统.pdf_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《数据库课程设计之SQL_Server图书馆管理系统.pdf》由会员分享,可在线阅读,更多相关《数据库课程设计之SQL_Server图书馆管理系统.pdf(14页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、数据库系统概论课程设计图书馆数据库管理系统目录序言.1一、图书馆管理系统E-R 图.2二、图书馆管理系统功能实现示意图.3三、图书馆管理系统功能图例.43.1 读者借阅图书 .43.2 读者归还图书 .43.3 读者续借图书 .53.4 读者查询借阅图书情况.53.5 读者检索图书信息.6四、图书馆管理系统附加功能.74.1 往学生表中插入列 系部,其值等于学号中代表系部的位的值,再插入列 专业号,其值等于学号中代表专业的位的值.7*II*4.2 查询每个学生对书本的借阅数量.94.3 查询各个专业的学生借阅书本的数量.11五、图书馆管理系统数据库、数据表源代码.错误!未定义书签。5.1 图书

2、馆管理系统 数据库 源代码 .错误!未定义书签。5.2 图书馆管理系统 数据表 源代码 .错误!未定义书签。六、图书馆管理系统存储过程源代码.错误!未定义书签。6.1 读者借阅图书存储过程.错误!未定义书签。6.2 读者还书存储过程.错误!未定义书签。6.3 读者续借图书存储过程 .错误!未定义书签。6.4 读者查询借阅图书情况存储过程.错误!未定义书签。6.5 读者检索的图书信息存储过程.错误!未定义书签。七、图书馆管理系统触发器源代码.错误!未定义书签。7.1 借书要求(书本没有库存,则无法进行借书操作)错误!未定义书签。7.2 借书要求(读者最多借阅量).错误!未定义书签。7.3 续借次

3、数要求 .错误!未定义书签。7.4 读者还书信息插入RDeleted表.错误!未定义书签。*1*序言本图书馆管理系统谨根据实际需求所创建,创建有如下八个数据表:Book(图书信息表),Dept(学生系部信息表),Major(学生专业信息表),Student(学生信息表),StudentBook(学生借阅图书信息表),Teacher(教师信息表),TeacherBook(教师借阅图书信息表),RDeleted(读者还书信息表)等。这些数据表结合图书馆数据库中的五个存储过程,即实现了普通图书馆的大部分功能。如读者借阅图书功能(Execute RBorrowBook 读者号 ,图书分类号),读者归还

4、图书功能(Execute RReturnBook 读者号,图书分类号),读者续借图书功能(ExecuteRRenewBook 读者号,图书分类号),读者查询图书借阅情况功能(ExecuteRQueryBook 读者号),读者检索的图书信息功能(Execute RIndexBook 关键字)等。具体的功能表现皆在“第二章:图书馆管理系统功能”中有详细的图例说明。本图书馆管理系统谨根据实际需要,创建了七个触发器,就此,创作者对这些触发器做如下说明:1、tri_Book 功能表现:只有在图书馆内相关书籍尚有库存的情况下,读者才可以进行借阅操作2、tri_SborrowNum 功能表现:控制学生的图书

5、借阅量在5 本以内(包括 5 本)3、tri_SrenewBook 功能表现:控制学生续借图书次数在3 次以内(包括 3 次)4、tri_SreturnBook 功能表现:将学生的还书信息插入RDeleted表5、tri_TborrowNum 功能表现:控制教师的图书借阅量在10 本以内(包括 10 本)6、tri_TrenewBook 功能表现:控制学生续借图书次数在4 次以内(包括 4 次)7、tri_TreturnBook 功能表现:将教师的还书信息插入RDeleted表本图书馆管理系统设计思路较为肤浅,但在一定程度上实现了图书馆数据库管理系统的实用功能。初次设计数据库,其中肯定会有不足

6、之处,还望读者谅解!本课程设计附有“图书馆数据库管理系统的所有源代码”,您可以根据需要在“第四章节”至“第七章节”中进行查看,或查看与本课程设计处于同一目录下的*.sql 源代码文件!作者:*2*一、图书馆管理系统E-R 图教师借阅图书期限较长,并且允许借阅的书本量较大。因此,将教师借阅关系与学生借阅关系分开较为适宜。分类号书名作者出版社类别出版日期ISBN 价格总量借出量年龄电话性别姓名学号系部编号系部名称专业编号专业名称归属归属系部专业归属学生学号与专业编号的联系学生学号与系部编号的联系系部编号与专业编号的联系借阅日期续借次数借阅日期续借次数学生图书学生借阅教师借阅教师工号姓名性别年龄职称

7、电话*3*二、图书馆管理系统功能实现示意图由于教师与学生的借阅图书、归还图书等等过程大致相同,在此,仅借学生有关表对象信息来对各存储过程作简要说明:相关信息写入借阅图书RBorrowBook 图书信息表Book 学生借阅图书信息表StudentBook tri_Book 图书库存量减 1 tri_SborrowNum借阅量未超5 本学生借阅图书信息表StudentBook 相关信息写入归还图书RReturnBook 读者还书信息表RDeleted图书信息表Book 学生借阅图书信息表StudentBook tri_SreturnBook图书库存量加1 tri_SborrowNum删除借阅记录续

8、借图书RRenewBook tri_SrenewBook 续借次数不超三次,则将续借次数加1 相关信息写入学生借阅图书信息表StudentBook 学生借阅图书信息表StudentBook 专业信息表Major 学生信息表Student 系部信息表Dept 图书信息表Book 查询图书借阅情况 RQueryBook 获取图书相关信息计算学生专业信息计算学生系部信息获取学生相关信息综合信息输出图书信息表Book 由存储过程RindexBook 查找匹配图书信息综合信息输出给读者读者检索图书RIndexBook*4*三、图书馆管理系统功能图例3.1 读者借阅图书Execute RBorrowBoo

9、k 读者号 ,图书分类号-读者借阅图书实例use LibrarySystem goexec RBorrowBook T006324,D630.3 L836-其中 T006324以T为标识,代表教师编号execRBorrowBook S070407101,D630.3 L836-其中 S070407101以S为标识,代表学生学号go -结果如下:3.2 读者归还图书Execute RReturnBook 读者号 ,图书分类号-读者归还图书实例use LibrarySystem go exec RReturnBook T006324,D630.3 L836 exec RReturnBook S07

10、0407101,D630.3 L836 go -结果如下:*5*3.3 读者续借图书Execute RRenewBook 读者号 ,图书分类号-读者续借图书实例use LibrarySystem go-读者借阅图书exec RBorrowBook T006324,D630.3 L836 exec RBorrowBook S070407101,D630.3 L836 go waitfor delay 0:0:5-读者续借图书exec RRenewBook T006324,D630.3 L836 exec RRenewBook S070407101,D630.3 L836 go-结果如下:3.4

11、读者查询借阅图书情况Execute RQueryBook 读者号-读者查询图书借阅情况实例use LibrarySystem go exec RQueryBook T006432*6*exec RQueryBook S070407101 go-结果如下:3.5 读者检索图书信息Execute RIndexBook 关键词-读者检索图书信息实例use LibrarySystem go exec RIndexBook 数据库go-结果如下:*7*四、图书馆管理系统附加功能4.1 往学生表中插入一列 系部,其值等于学号中代表系部的位的值,再插入一列 专业号,其值等于学号中代表专业的位的值-往学生表

12、S中插入一列 系部 ,其值等于学号中代表系部的位的值use LibrarySystem go altertable Student add SdeptNo char(2)go declare sno char(10),total int,i int select total=count(*),i=1 from Student while(i=total)begin-查询数据表第 i 行数据的 SQL语句selecttop 1 sno=Sno from Student where Sno notin(selecttop(i-1)Sno from Student)update Student se

13、t SDeptNo=substring(sno,4,2)where Sno=sno set i=i+1 end select*from Student go-结果如下:*8*-往学生表 S中插入一列 专业号 ,其值等于学号中代表专业的位的值use LibrarySystem go altertable Student add SMajorNo varchar(50)go declare sno char(10),total int,i int select total=count(*),i=1 from Student while(i=total)begin-查询数据表第 i 行数据的 SQL

14、语句selecttop 1 sno=Sno from Student where Sno notin(selecttop(i-1)Sno from Student)update Student set SMajorNo=substring(sno,4,4)where Sno=sno set i=i+1 end go*9*-结果如下:4.2 查询每个学生对书本的借阅数量-查询每个学生对书本的借阅数量use LibrarySystem go select Student.Sno 学号,Sname 姓名,Book.ClassifyNo 图书分类号,Bname 书名from StudentBook,S

15、tudent,Book where Student.Sno=StudentBook.Sno andStudentBook.ClassifyNo=Book.ClassifyNo orderby Student.Sno computecount(Student.Sno)by Student.Sno go*10*-结果如下:*11*4.3 查询各个专业的学生借阅书本的数量use LibrarySystem go declare tempDept table(专业编号 char(4)primarykey,专业 varchar(30)notnull,学生借阅书本数量intdefault 0)Insert

16、 into tempDept(专业编号,专业)select Mno,Mname from Majordeclare i int,total int,no char(10)select total=count(*),i=1 from StudentBook while(itotal)beginselecttop1 no=Sno fromStudentBook whereSno notin(selecttop(i-1)Sno from StudentBook)update tempDept set学生借阅书本数量=学生借阅书本数量+1 where专业编号=substring(no,4,4)set i=i+1 end select*from tempDept select total as学生借阅书本总量go -结果如下:*12*后续“数据库课程设计之 SQL Server图书馆管理系统源码”五、图书馆管理系统数据库、数据表源代码六、图书馆管理系统存储过程源代码七、图书馆管理系统触发器源代码

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

当前位置:首页 > 技术资料 > 技术方案

本站为文档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