asp数据库课程设计.docx
- 文档编号:29876660
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:51
- 大小:2.40MB
asp数据库课程设计.docx
《asp数据库课程设计.docx》由会员分享,可在线阅读,更多相关《asp数据库课程设计.docx(51页珍藏版)》请在冰豆网上搜索。
asp数据库课程设计
数据库课程设计
--图书馆管理系统
1.1概述
在以前,大多数学校图书馆都是封闭式管理,通过卡片登记借阅信息,只能实现有限的流通,使得图书馆不能发挥其应有的作用;即使实现了正常流通的,也不能提供领导管理上需要的各种信息如本馆的流通情况。
随着现代科学技术的进步,人类社会正逐渐走向信息化。
图书馆有丰富的文献信息资源,是社会信息系统的重要组成部分,在信息社会中的作用越来越重要。
在90年代以后,我国图书馆信息网络建设取得了较大的发展,图书馆信息化建设迈上了一个新台阶。
图书馆的信息化管理,就是将传统图书馆业务的手工操作转变成由计算机管理,即将图书馆的图书典藏、流通、检索及常规业务管理等工作,利用计算机技术,进行高效、准确的信息化管理。
本次课程设计就是以安徽新华学院图书馆为例,向大家全面剖析图书馆管理的内容,由此得出图书馆管理系统的需求分析和数据建模,并最终通过演示使大家见识系统管理的情况。
1.2系统分析
1.2.1需求分析
一般通用的图书管管理系统包括系统管理、读者管理、图书流通、统计、查询等功能。
比较先进的图书感管理系统能够在一个界面下实现图书的管理,借阅权限、暂停某些读者的借阅权、导入导出读者等,此外,通过前台(如IE浏览器)让读者使用借阅资料查寻、查询自己的借阅史、预约资料、查询馆藏图书等。
1.2.2开发工具选择
本系统后台数据库采用MicrosoftSQLsever2000数据库,该数据库系统在安全性、准确性和运行速度方面有绝对优势,并且处理数据量大,效率高。
运行平台是windowsxp(sp2)、windows2000等。
1.3总体设计
1.3.1项目规划
图书馆管理系统主要由基础信息维护、读者管理、图书管理、图书流通管理、统计分析管理等所必备的功能模块组成。
其中每个模块都有若干个相关联的子功能模块组成。
具体的见图1.3.3所示。
(1)基础信息维护功能模块:
用于对图书馆信息、书架设置、管理员设置等项目进行初始化设置,他的子功能模块如图1.3.3所示。
(2)读者管理功能模块
用于管理与读者相关的信息,包含的子功能如图1.3.3所示。
(3)图书管理功能模块
用于管理与图书相关的信息,包含的子功能如图1.3.3所示。
(4)图书流通管理功能模块
由于管理图书流通环节相关的操作,包含如图1.3.3所示的子模块。
(5)统计分析管理功能模块
为图书馆管理人员的分析决策提供依据,包含的子功能如图1.3.3所示。
1.3.2系统业务流程分析
图书馆的业务流程如下图所示
系统登录
是否登陆
图书馆管理系统界面
读者
管理员
查看图书档案信息
查看读者档案信息
查看图书流通情况
图书馆流通管理
图书馆管理
读者档案管理
图书档案管理
图书流通
图书丢失
图书罚款
图书归还
图书续借
图书预约
图书借阅
1.3.3系统功能模块结构图
图书丢失
图1.3.3
1.4系统设计
1.4.1设计目标
本系统属于小型的数据库管理系统,可以对中小型图书馆资源进行有效的管理,通过本系统可以达到以下目标:
1.灵活的录入数据,使信息传递更快捷。
2.系统采用人机交互方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠
3.实现后台监控功能
4.利用SQL语句实现各种查询,支持简单查询、模糊查询、嵌套查询等
5.实现图书馆的信息化管理
6.对用户输入的数据进行严格的数据检验,尽可能避免人为错误
7.系统最大限度的实现了易安装性、易维护性和易操作性
1.4.2数据库设计
1.4.2.1图书馆管理系统表清单
表格名称
表格用途
读者信息表
存储读者的基本信息
图书基本信息
存储图书馆图书的基本信息
图书馆信息表
存储图书馆的基本信息
书库信息表
存储图书馆书库的基本信息
书库管理员信息表
存储图书馆管理员的基本信信息(包含院长)
图书借阅表
存储读者借阅图书基本信息
图书归还表
存储读者归还图书基本信息
读者类型表
存储读者类型的基本信息
图书续借表
存储读者续借图书基本信息
书架名称
存储书架的基本信息
图书预约表
存储读者预约图书基本信息
读者证挂失与恢复表
存储读者证的管理信息
图书罚款表
存储图书丢失罚款的管理信息
图书丢失表
存储读者丢失图书基本信息
图书注销表
存储图书馆注销图书的基本信息
1.4.2.2图书馆管理系统的E—R图
本系统根据设计规划出的实体有图书基本信息实体、读者基本信息实体、图书馆管理员信息实体、图书馆信息实体、书库信息实体、读者类型信息实体和图书罚款实体等。
1.图书基本信息实体图
库存总量
2.读者基本信息实体图
是否挂失
3.图书馆管理员信息实体图
所在书库名称
4.图书馆信息实体图
简介
5.书库信息实体图
书库所属书架数
6.书架信息实体图
书架编号
7.读者类型实体图
限制他如数册数
8.图书罚款实体图
操作员
9.图书馆管理系统实体间关系E_R图,如下图所示:
图书馆信息
1.4.2.3、将E-R图转换成关系模式
图书借阅表(借阅编号,图书编号,读者编号,借阅时间,应还时间,借阅次数,状态,操作员,备注)
图书归还表(归还编号,图书编号,读者证号,归还时间,操作员,确认归还,备注)
读者类型表(读者类型名,读者类型号,所借图书类型号,限制图书册数,备注)
图书续借表(续借编号,图书编号,读者证号,续借时间,应还时间,备注)
图书基本信息表(图书编号,书名,图书类型名,作者,译者,出版社名称,出版社编号,价格,页码,书架名称,现存量,库存总量,入库时间,是否注销,操作员,备注)
书架名称(书架信息,书架编号,所属书库名,书架所藏图书册)
书库管理员信息表(员工号,员工姓名,员工职务,所在部门,性别,有效证件,有效证件号,联系方式,备注)
图书馆信息表(馆名,馆长,联系方式,联系地址,简介,备注)
图书注销表(注销编号,图书编号,入库时间,入库数量,注销数量,注销时间,操作员,备注)
读者信息表(读者证号,读者姓名,性别,读者类型名,出生日期,有效证件,有效证件号,联系地址,联系方式,登记日期,有效期至,操作员,是否挂失,备注)
图书预约表(预约编号,图书编号,读者证号,预约时间,到书未取记录,取书成功记录,预约记录,备注)
读者证挂失(书库名称,书库编号,书库所属书架数,书库管理员工号,备注)
图书罚款表(罚款编号,图书编号,读者证号,罚款日期,应罚金额,实收金额,是否交款,操作员,备注)
图书丢失表(丢失编号,图书编号,读者证号,赔偿金额,操作时间,操作员,备注)
1.4.2.4、图书馆管理系统的数据表的表结构
图书借阅表
列明
数据类型
长度
是否允许为空
默认值
说明
借阅编号
char
20
否
主键
图书编号
char
10
否
外键
读者编号
char
10
否
外键
借阅时间
datetime
8
是
应还时间
datetime
8
是
借阅次数
Int
4
是
状态
Bit
1
是
1
1未借0已借
操作员
Char
10
是
备注
varchar
200
是
图书归还表
列名
数据类型
长度
是否允许为空
默认值
说明
归还编号
char
20
否
主键
图书编号
Char
10
否
外键
读者证号
Char
10
否
外键
归还时间
Datetime
8
是
操作员
Char
10
是
确认归还
Bit
1
是
1
1归还0未归还
备注
Varchar
200
是
读者类型表
列名
数据类型
长度
是否允许为空
默认值
说明
读者类型名
char
20
否
主键
读者类型号
Char
10
是
所借图书类型号
Char
10
是
限制图书册数
Char
10
是
备注
Varchar
200
是
图书续借表
列名
数据类型
长度
是否允许为空
默认值
说明
续借编号
char
20
否
主键
图书编号
Char
10
否
外键
读者证号
Char
10
否
外键
续借时间
Datetime
8
是
应还时间
Datetime
8
是
备注
Varchar
200
是
图书基本信息
列名
数据类型
长度
是否允许为空
默认值
说明
图书编号
char
10
否
主键
书名
char
30
是
图书类型名
char
20
否
作者
char
10
是
译者
char
10
是
出版社名称
char
20
是
出版社编号
char
10
是
价格
char
10
是
页码
char
10
是
书架名称
char
10
否
外键
现存量
char
10
是
库存总量
char
10
是
入库时间
datetime
8
是
是否注销
bit
1
是
0
1注销,0未注销
操作员
char
10
是
备注
varchar
200
是
书架名称
列名
数据类型
长度
是否允许为空
默认值
说明
书架信息
char
10
否
主键
书架编号
char
10
是
所属书库名
char
20
是
书架所藏图书册
char
10
是
书库管理员信息表
列名
数据类型
长度
是否允许为空
默认值
说明
员工号
char
10
否
主键
员工姓名
char
8
是
员工职务
char
10
是
所在部门
char
10
是
性别
bit
1
否
1
1男,0女
有效证件
char
20
否
有效证件号
char
20
否
联系方式
Char
20
是
备注
Varchar
200
是
图书馆信息表
列名
数据类型
长度
是否允许为空
默认值
说明
馆名
Char
20
否
主键
馆长
char
10
是
联系方式
char
20
是
联系地址
char
50
是
简介
char
200
是
备注
Varchar
200
是
图书注销表
列名
数据类型
长度
是否允许为空
默认值
说明
注销编号
char
10
否
主键
图书编号
Char
10
否
外键
入库时间
Datetime
8
是
入库数量
Int
4
是
注销数量
Int
4
是
注销时间
Datetime
8
是
操作员
Char
8
是
备注
Varchat
200
是
读者信息表
列名
数据类型
长度
是否允许为空
默认值
说明
读者证号
char
10
否
主键
读者姓名
varchar
20
是
性别
bit
1
是
1
1为男,0为女
读者类型名
varchar
20
是
外键
出生日期
datetime
8
是
有效证件
char
10
是
有效证件号
char
18
是
联系地址
char
20
是
联系方式
char
12
是
登记日期
datetime
8
是
有效期至
datetime
8
是
操作员
char
10
是
是否挂失
bit
1
是
0
0为否,1为是
备注
varchar
20
是
图书预约表
列名
数据类型
长度
是否允许为空
默认值
说明
预约编号
char
10
否
主键
图书编号
char
10
是
外键
读者证号
char
10
是
外键
预约时间
datetime
8
是
到书未取记录
char
10
是
取书成功记录
char
10
是
预约记录
char
10
是
备注
varchar
20
是
读者证挂失与恢复表
列名
数据类型
长度
是否允许为空
默认值
说明
挂失编号
char
10
否
主键
读者证号
char
10
是
外键
挂失日期
datetime
8
否
恢复日期
char
10
否
恢复编号
char
10
否
备注
varchar
200
否
书库信息表
列名
数据类型
长度
是否允许为空
默认值
说明
书库名称
char
20
否
主键
书库编号
char
10
否
书库所属书架数
int
4
是
书库管理员工号
char
10
是
备注
varchar
200
是
图书罚款表
列名
数据类型
长度
是否允许为空
默认值
说明
罚款编号
char
10
否
主键
图书编号
char
10
否
外键
读者证号
char
10
否
外键
罚款日期
datetime
8
是
应罚金额
smallmoney
4
是
实收金额
smallmoney
4
是
是否交款
bit
1
是
1为是,0为否
操作员
char
10
是
备注
varchar
200
是
图书丢失表
列名
数据类型
长度
是否允许为空
默认值
说明
丢失编号
char
10
否
主键
图书编号
char
10
否
外键
读者证号
char
10
否
外键
赔偿金额
smallmoney
4
是
操作时间
datetime
8
是
操作员
char
10
是
备注
varchar
200
是
1.4.2.5、图书馆管理系统表的关系图(剪切图)
1.4.2.6、利用企业管理器创建图书馆管理系统表
只做重要的几张表示意即可:
1.4.2.7、创建视图
数据库视图清单:
1)创建视图V_图书信息显示在馆图书信息,包含(图书编号、书名、作者、出版社名称、所属书库名、现存库量)
use图书馆管理系统
createviewv_图书信息
as
select图书编号,书名,作者,出版社名称,所属书库名,现存库量
from图书基本信息a,书架信息b
wherea.书架名称=b.书架信息
2)创建视图V_读者信息,显示读者基本信息,包含(读者证号,读者姓名,性别,读者类型名,登记日期,有效期至,是否挂失)
go
createviewv_读者信息
as
select*
from读者信息表
go
1.4.2.8、创建存储过程
数据库存储过程清单:
1)创建“sf_图书借阅”存储过程,实现借阅图书出库
use图书馆管理系统
go
createprocsf_图书借阅
as
begintran
update图书基本信息set现存库量=isnull(现存库量,0)-1
from图书基本信息a,图书借阅表b
wherea.图书编号=b.图书编号andb.状态='1'
update图书借阅set借阅次数='0',状态='1'
where状态='1'
commit
go
2)创建“sf_图书归还”存储过程,实现归还图书入库和产生罚款信息功能
use图书馆管理系统
go
createprocsf_图书归还@借阅编号int,@罚款金额smallmoney
as
begintran
update图书基本信息set现存库量=isnull(现存库量,0)+1
from图书基本信息a,图书借阅表b
wherea.图书编号=b.图书编号andb.借阅编号=@借阅编号
if@罚款金额<>0
insertinto图书罚款表(图书编号,读者证号,罚款日期,应罚金额,是否交款)
select图书编号,读者编号,getdate(),@罚款金额,0from图书借阅表where借阅编号=@借阅编号
insertinto图书归还表(图书编号,读者证号,归还时间)
select图书编号,读者编号,getdate()
from图书借阅表
where借阅编号=@借阅编号
update图书借阅表set状态='0'
where借阅编号=@借阅编号
commit
go
3)创建名为“sf_图书馆馆藏情况”的存储过程,实现输入图书名或图书编号查询图书的资料及现库存量等。
use图书馆管理系统
go
ifexists(selectnamefromsysobjectswherename='sf_书馆馆藏情况'andtype='p')
dropprocsf_书馆馆藏情况
go
createprocsf_书馆馆藏情况@书名char(30),@图书编号char(10)
as
print('输入书名和图书编号(俩个至少填一个,另一个用其他任意符号代替):
')
select*fromv_图书信息
where图书编号=@图书编号or书名=@书名
go
4)创建名为“sf_书库图书”的存储过程,实现输入书库名或书库编号查询图书的资料及现库存量等信息。
use图书馆管理系统
go
ifexists(selectnamefromsysobjectswherename='sf_书库图书'andtype='p')
dropprocsf_书库图书
go
createprocsf_书库图书@书库名称char(20),@书库编号char(10)
as
print('请输入书库名称或书库编号(没输入的用空字符代替):
')
selecta.图书编号,a.书名,a.图书类型名,a.作者,a.译者,a.出版社名称,a.价格,a.页码,a.书架名称,a.现存库量,a.库存总量,a.入库时间,a.是否注销,a.操作员,c.书架信息,c.所属书库名
from图书基本信息a,书库信息表b,书架信息c
where(b.书库名称=@书库名称orb.书库编号=@书库编号)andb.书库名称=c.所属书库名andc.书架信息=a.书架名称
go
5)创建名为“sf_管理员查找”的存储过程,实现输入员工号和所在部门(俩个至少填一个,另一个用其他任意符号代替查询员工的资料等信息。
use图书馆管理系统
go
ifexists(selectnamefromsysobjectswherename='sf_管理员查找'andtype='p')
dropprocsf_管理员查找
go
createprocsf_管理员查找@员工号char(10),@所在部门char(10)
as
print('输入员工号和所在部门(俩个至少填一个,另一个用任意符号代替):
')
select*from管理员信息表
where员工号=@员工号or所在部门=@所在部门
go
1.4.2.9、创建触发器
1)基于视图v_图书信息的触发器--tr_图书注销
当一个图书被注销后,读者将不会在视图中再查看到该图书的信息。
use图书馆管理系统
go
setnocounton
ifexists(selectnamefromsysobjectswherename='tr_图书注销'andtype='tr')
droptriggertr_图书注销
go
createtriggertr_图书注销onv_图书信息
insteadofdelete
as
deletefrom书架信息
where书架信息=(select书架名称from图书基本信息where图书编号in(select图书编号fromdeleted))
go
2)在数据库图书馆管理系统中创建一触发器—tr_添加图书,监视图书基本信息表中数据的插入,如果要添加记录的编号已经存在于原表中,则在该记录的基础上进行修改,如果要添加的记录在原表中不存在,则直接将记录插入表中,最后显示插入或修改记录的信息。
use图书馆管理系统
go
ifexists(selectnamefromsysobjectswherename='tr_添加图书')
droptriggertr_添加图书
go
createtriggertr_添加图书on图书基本信息
insteadofinsert
as
setnocounton
update图书基本信息
set图书基本信息.图书编号=inserted.图书编号
图书基本信息.图书名=inserted.图书名
图书基本信息.图书类型=inserted.图书类型
图书基本信息.作者=inserted.作者
图书基本信息.译者=inserted.译者
图书基本信息.出版社名称=inserted.出版社名称
图书基本信息.价格=inserted.价格
图书基本信息.页码=inserted.页码
图书基本信息.书架名称=inserted.书架名称
图书基本信息.现存量=inserted.现存量
图书基本信息.库存总量=inserted.库存总量
图书基本信息.入库时间=inserted.入库时间
图书基本信息.是否注销=inserted.是否注销
图书基本信息.操作员=inserted.操作员
from图书基本信息joininserted
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- asp 数据库 课程设计