《sqlserver图书馆系统》实例讲解文档格式.docx
- 文档编号:19953990
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:12
- 大小:399.98KB
《sqlserver图书馆系统》实例讲解文档格式.docx
《《sqlserver图书馆系统》实例讲解文档格式.docx》由会员分享,可在线阅读,更多相关《《sqlserver图书馆系统》实例讲解文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
图书分类号’),读者续借图书功能(ExecuteRRenewBook’读者号'
图书分类号'
),读者查询图书借阅情况功能(ExecuteRQueryBook'
读者号'
),读者检索的图书信息功能(ExecuteRIndexBook'
关键字’)等。
具体的功能表现皆在“第二章:
图书馆管理系统功能”中有详细的图例说明.
本图书馆管理系统谨根据实际需要,创建了七个触发器,就此,创作者对这些触发器做如下说明:
1、tri_Book功能表现:
只有在图书馆内相关书籍尚有库存的情况下,读者才可以进行借阅操作
2、tri_SborrowNum功能表现:
控制学生的图书借阅量在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表
本图书馆管理系统设计思路较为肤浅,但在一定程度上实现了图书馆数据库管理系统的实用功能.初次设计数据库,其中肯定会有不足之处,还望读者谅解!
本课程设计附有“图书馆数据库管理系统的所有源代码”,您可以根据需要在“第四章节”至“第七章节”中进行查看,或查看与本课程设计处于同一目录下的*。
sql源代码文件!
一、图书馆管理系统E-R图
教师借阅图书期限较长,并且允许借阅的书本量较大.因此,将教师借阅关系与学生借阅关系分开较为适宜。
二、图书馆管理系统功能实现示意图
由于教师与学生的借阅图书、归还图书等等过程大致相同,在此,仅借学生有关表对象信息来对各存储过程作简要说明:
三、图书馆管理系统功能图例
3.1读者借阅图书
ExecuteRBorrowBook'
--———--—-——--—读者借阅图书实例
useLibrarySystem
go
execRBorrowBookT006324,'
D630.3L836’--其中T006324以T为标识,代表教师编号
execRBorrowBookS0*******1,'
D630.3L836’——-其中S0*******1以S为标识,代表学生学号
go
——---结果如下:
3。
2读者归还图书
ExecuteRReturnBook’读者号’,'
-—————-———--——--读者归还图书实例
execRReturnBookT006324,'
D630。
3L836’
execRReturnBookS0*******1,’D630。
3L836'
go—--——结果如下:
3读者续借图书
ExecuteRRenewBook'
读者号’,’图书分类号'
--——-----———--读者续借图书实例
—---—-—读者借阅图书
execRBorrowBookT006324,’D630。
execRBorrowBookS0*******1,'
D630.3L836'
waitfordelay'
0:
5'
———————-读者续借图书
execRRenewBookT006324,'
D630.3L836’
execRRenewBookS0*******1,’D630。
go
—---—结果如下:
4读者查询借阅图书情况
ExecuteRQueryBook’读者号'
—--—-———----读者查询图书借阅情况实例
execRQueryBookT006432
execRQueryBookS0*******1
-——-—结果如下:
3.5读者检索图书信息
ExecuteRIndexBook'
关键词'
---—-————---读者检索图书信息实例
execRIndexBook数据库
-—-————结果如下:
四、图书馆管理系统附加功能
4.1往学生表中插入一列”系部"
,其值等于学号中代表系部的位的值,再插入一列"
专业号”,其值等于学号中代表专业的位的值
-————--——--———-往学生表S中插入一列”系部"
,其值等于学号中代表系部的位的值
altertableStudent
addSdeptNochar
(2)
declare@snochar(10),@totalint,@iint
select@total=count(*),@i=1
fromStudent
while(@i<
=@total)
begin
--——-——-—-—-查询数据表第@i行数据的SQL语句
selecttop1@sno=SnofromStudentwhereSnonotin(selecttop(@i-1)SnofromStudent)
updateStudent
setSDeptNo=substring(@sno,4,2)
whereSno=@sno
set@i=@i+1
end
select*fromStudent
-——--—---—-结果如下:
-—--—-——--—-—往学生表S中插入一列"
专业号”,其值等于学号中代表专业的位的值
addSMajorNovarchar(50)
declare@snochar(10),@totalint,@iint
select@total=count(*),@i=1
while(@i〈=@total)
-----———-——-查询数据表第@i行数据的SQL语句
setSMajorNo=substring(@sno,4,4)
whereSno=@sno
set@i=@i+1
---—-—-—-—-结果如下:
4。
2查询每个学生对书本的借阅数量
——查询每个学生对书本的借阅数量
selectStudent.Sno学号,Sname姓名,Book。
ClassifyNo图书分类号,Bname书名
fromStudentBook,Student,Book
whereStudent。
Sno=StudentBook.SnoandStudentBook。
ClassifyNo=Book。
ClassifyNo
orderbyStudent。
Sno
computecount(Student.Sno)byStudent。
-———--——---结果如下:
3查询各个专业的学生借阅书本的数量
declare@tempDepttable(
专业编号char(4)primarykey,
专业varchar(30)notnull,
学生借阅书本数量intdefault0)
Insertinto@tempDept(专业编号,专业)selectMno,MnamefromMajor
declare@iint,@totalint,@nochar(10)
select@total=count(*),@i=1fromStudentBook
while(@i〈@total)begin
selecttop1@no=SnofromStudentBookwhereSnonotin(selecttop(@i—1)SnofromStudentBook)
update@tempDept
set学生借阅书本数量=学生借阅书本数量+1
where专业编号=substring(@no,4,4)
set@i=@i+1
select*from@tempDept
select@totalas学生借阅书本总量
go-—————-——--结果如下:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sqlserver图书馆系统 sqlserver 图书馆 系统 实例 讲解