ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:19.92KB ,
资源ID:7572492      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-7572492.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(图书馆借阅系统数据库设计.docx)为本站会员(b****5)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

图书馆借阅系统数据库设计.docx

1、图书馆借阅系统数据库设计南昌航空大学实验报告二016年3月28日课程名称: 数据库原理班级: 14207218指导教师评定:实验名称:姓名:图书室借阅系统胡合达 同组人:署名:一、实验环境1 Windows2000 或以上版本;2 SQLServer 2005 。二、实验目的认识并掌握数据库设计基本方法三系统需求剖析1.设计本系统模拟学生在图书室借阅图书的内容,可以实现以下功能:借阅信息的查问功能;图书信息的多重点字检索查问;图书的出借、返还及超期罚款;2可以供给必定的安全体制,供给数据信息受权接见,防备任意修改、查问。3对查问、统计的结果可以列表显示。4.办理对象:学生,馆藏图书信息,借阅信

2、息,罚款信息,借经历史5.安全性要求系统安全性要求表此刻数据库安全性、 信息安全性和系统平台的安全性等方面。 安全性先经过视图体制, 不一样的用户只好接见系统受权的视图, 这样可供给系统数据必定程度上的安全性, 再经过分派权限、 设置权限级别来差别对待不一样操作者对数据库的操作来提升数据库的安全性; 系统平台的安全性表此刻操作系统的安全性、 计算机系统的安全性和网络系统的安全性等方面。6. 完好性要求系统完好性要求系统中数据的正确性以及相容性。可经过成立主、外键,使用拘束,或许经过使用触发器和级联更新。check四观点构造设计系统开发的整体目标是实现图书室管理的系统化和自动化, 缩短借阅者的等

3、候时间, 减轻工作人员的工作量,方便工作人员对它的操作, 提升管理的质量和水平, 做到高效、 智能化管理,进而达到提升图书管理效率的目的。观点设计阶段主假如将需求剖析阶段获得的用户需求抽象为信息构造 ( 观点模型 ) 的过程, 它是整个数据库设计的重点。图书借阅系统的 E-R 图读者n罚款m管理员m1管理馆室 借阅1 m1 n m n属于送还n图书nm读者E R 图各实体的属性以下所示:图 书 :Book(BookID, BookNo, BookName,BookWriter,BookPublish,BookDate,BookClass,BookState,BookRNo)读者: Reader

4、(ReaID,ReaName,ReaSex,ReaNo,ReaLBID, ReaDep, ReaGrade, ReaPref, ReaDate, Reasx)管理员: Maneger (MID,MName,MSex)馆室: Room(RoomNo,RoomMID,RoomNum,RoomAddre)借阅信息: Borrow(BookID,ReaderID,BookName,BookWriter, Outdate,YHdate)借经历史: History(BookID,ReaderID,BookName,BookWriter, Outdate,Indate,YHdate)罚款信息: Fine (

5、BookID,ReaderID,BookName,Outdate,Indate,Fine, CLState,MID)五逻辑构造设计以上的观点设计阶段是独立于任何一种数据模型的,可是逻辑设计阶段就与采用的DBMS产品发生关系了,系统逻辑设计的任务就是将观点设计阶段设计好的基本 E-R 图变换为采用 DBMS产品所支持的数据模型相切合的逻辑构造。详细内容包含数据组织(将 E-R 图变换成关系模型、模型优化、数据库模式定义、用户子模式设计) 、数据办理(画出系统功能模块图)两大任务。将图书借阅 E-R 图变换为关系模型图书列名数据种类能否为空说明BookIDCharnot null图书编号BookN

6、oCharnot null图书的索书号BookNameCharnot null图书的书名BookWriterCharnot null图书作者BookPulishCharnot null图书第一版社BooknumSmallintNot null图书数目BookDateDate第一版日期BookClassChar图书的分类BooknumssmallintNot null图书可借数目BookStateCharnot null图书能否可借BookRNoCharnot null图书所在馆室号读者列名数据种类能否为空说明ReaIDCharnot null读者编号ReaNameCharnot null读者姓

7、名ReaSexCharnot null读者性别ReaNoCharnot null读者学号ReaDepChar读者所在学院ReaPrefChar读者所属专业ReaGradeChar读者的年级ReaDateDatenot null办证日期ReaBsSmallintNot null已借本数ReastateCharNot nnll借书状态ReasxSmallintNot null借书上限管理员列名数据种类能否为空说明MID 主键Charnot null管理员编号MNameCharnot null管理员姓名MSexChar管理员性别馆室列名数据种类能否为空说明RoomNoCharnot null馆室号R

8、oomMIDCharnot null馆室管理员编号RoomnumCharnot null馆室拥有图书数目RoomAddreChar馆室地点RoomType,Char馆室种类借阅信息列名数据种类能否为空说明ReaIDCharnot null读者编号BookIDCharnot null图书编号BookNameCharnot null图书名BookWriterChar作者OutdateDatenot null借阅时间IndateDate送还时间YHdateDatenot null应还时间FineCharNot null罚款金额CLStateChar办理状态MIDCharnot null管理员编号六数

9、据库的实行创立数据库及表格管理员基本信息表的成立:create table Maneger(MIDchar(10)primary key,MName char(10)not null,MSexchar(2),check(MSex = 男 or MSex = 女 )图书室室基本信息表的成立:create table Room(RoomNo char(5) primary key,RoomMID char(10) not null,Roomnum char(5) not null ,RoomAddre char(20),RoomType char (10),foreign key(RoomMID)

10、 references Maneger(MID)on delete cascade)on update cascade ,馆藏图书基本信息表的成立:create table Book(BookID char(9) primary key,BookNo char(20) not null,BookName char(50) not null,BookWriter char(30) not null,BookPublish char(20) not null,Booknum smallint check (Booknum=0),BookDate datetime,BookClass char(20

11、),Booknums smallint check (Booknum=0),BookState char(10) default 可借 not null,BookRNo char(5) not null,check (BooknumBooknums ),foreign key(BookRNo) references Room(RoomNo)on delete cascadeon update cascade ,)读者基本信息表的成立:create table Reader(ReaIDchar(9)primary key,ReaNamechar(10) not null,ReaSexchar(2

12、)not null,ReaNochar(9)not null,Reasx smallint not null,ReaBs smallint not null,ReaDepchar(20),ReaGradechar(5),ReaPrefchar(20),ReaDateDatetime,Reastatechar (5) not null default可借 ,foreign key(ReaLBID) references ReaderType(LBID)on delete cascadeon update cascade ,check(ReaSex =男 or ReaSex =女 )(6)借阅基本

13、信息表的成立:create table Borrow(BookIDchar(9),ReaIDchar(9),OutdateDatetime not null,YHdateDatetime not null,IndateDatetime,Finechar(5) not null default0,CLStatechar(8),MIDchar(10) not null,primary key(BookID,ReaID),foreign key(MID) references Maneger(MID)on delete cascadeon update cascade)成立视图( 1)用于查问图书基

14、本信息的视图定义以下:create view Bookview ( 索书号 , 书名 , 作者 , 第一版社 , 图书状态 )asselect BookNo,BookName,BookWriter,BookPublish,BookState from Book( 2)用于读者基本信息查问的视图定义以下:create view Readerview ( 读者姓名 ,种类 ,学院 ,专业 ,办证日期 )asselect ReaName,ReaType,ReaDep,ReaPref,ReaDatefrom Reader( 3)用于显示目前借阅基本信息的视图定义以下:create view Borro

15、wview ( 读者编号 ,书名 ,作者 ,借阅日期 ,到期日期 )asselect ReaID,BookName,BookWriter,Outdate,YHdatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Borrow.Indate is null( 4)用于借经历史信息查问的视图定义以下:create view Historyview ( 读者编号 ,书名 ,借阅日期 ,送还日期 )asselect ReaID,BookName,Outdate,Indatefrom Borrow,Bookwhere Borrow.BookID=

16、Book.BookID and Borrow.Indate is not null ( 5)用于查问罚款信息的视图定义以下:create view Fineview ( 读者编号 ,书名 , 借阅日期 ,送还日期 ,罚款 ,办理状态 )asselect ReaID,BookName,Outdate,Indate,Fine,CLStatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Fine is not null成立索引create clustered index BookPublish on Book(BookPublish);cre

17、ate clustered index ReaDep on Reader(ReaDep);成立触发器当在中增添一条借阅记录时 ,书的可借数目减少一本,改正读者 ,并检查读者状态create trigger Borrow_insert1on Borrowfor insertasdeclare BookID char(9)declare ReaID char(9)select ReaID=ReaIDfrom insertedselect BookID=BookIDfrom insertedSelect Reastate =ReastateFrom ReaderWhere ReaID =ReaIdI

18、f(Reastate =不行借 )BeginRaiserror (该学生状态不行借书 ,16,1)Rollback transactionEndupdate Bookset Booknums=Booknums-1where BookID=BookIDupdate Readerset ReaBs=ReaBs+1where ReaID =ReaID当读者达到借书上限,设置借书状态为不行借create trigger Reader _updateon Readerfor updateasdeclare ReaBs smallintselect ReaBs =ReaBsfrom inserteddec

19、lare ReaID char(9)select ReaID=ReaIDfrom insertedSelect Reasx =ReasxFrom Readerwhere BookID=BookIDIf(Reasx =ReaBs )Beginupdate Readerset Reastate =不行借 where ReaID =ReaIDEnd还书的时候,书的可借数目增添一本,改正读者状态create trigger Borrow_inserton Borrowfor insertasdeclare BookID char(9)declare ReaID char(9)select ReaID=

20、ReaIDfrom insertedselect BookID=BookIDfrom insertedSelect Reastate =ReastateFrom ReaderWhere ReaID =ReaIdIf(Reastate =超期 )BeginRaiserror (该学生状态借书超期 ,16,1)Rollback transactionEndupdate Bookset Booknums=Booknums+1where BookID=BookIDupdate Readerset ReaBs=ReaBs-1where ReaID =ReaID储存过程1.Book_Insert 的定义

21、:CREATE PROCEDURE Book_InsertokClassBookID char(9) ,BookNo char(20),BookName char(50),BookWriter char(30),BookPublish char(20),BookDate datetime,BookClass char(20),Booknums smallint,Booknum smallint,BookState char(10),BookRNo char(5)asinsert into Bookvalues(BookID ,BookNo,BookName,BookWriter,BookSta

22、te ,BookRNo, Booknums,Booknum );,BookPublish,BookDate,Bo2.Reader_Insert的定义 :CREATE PROCEDURE Reader_InsertReaID char(9),ReaName char(10),ReaSex char(2),ReaNo char(9),ReaDep char(20),ReaGrade char(5),ReaPref char(20),ReaDate DatetimeReaBs smallint,Reastate char(5),Reasx smallint,asinsert into Readerv

23、alues( ReaID , ReaName, ReaSex,ReaNo ,ReaDep , ReaGrade ,ReaPref ,ReaDate, ReaBs,Reastate,Reasx ;3.Maneger_Insert的定义 :CREATE PROCEDURE Maneger_InsertMID char(10) ,MName char(10),MSex char(2),asinsert into Manegeralues(MID , MName ,MSex );4.Borrow_Insert 的定义 :CREATE PROCEDURE Borrow_InsertBookID char

24、(9),ReaID char(9),Outdate Datetime ,YHdate Datetime ,Indate Datetime,Fine char(5),CLState char(8),MID char(10)asinsert into Borrowvalues(BookID ,ReaID ,Outdate ,YHdate ,Indate ,Fine ,CLState ,MID );5.Query_Reader_R的定义:create procedure Query_Reader_RReaID char(9)asselect *from Readerviewwhere 编号 = lt

25、rim(ReaID);6. Query_Reader_M的定义:create procedure Query_Reader_Masselect *from Readerview7. Query_Book_Writer 的定义:create procedure Query_Book_WriterBookWriter char(50)asselect *from Bookviewwhere 作者 like %+ltrim(BookWriter)+%;8. Query_Book_Name_Publish的定义:create procedureQuery_Book_Name_PublishBookNa

26、me char(50),BookPublish char(20)asselect *from Bookviewwhere 书名 =ltrim(BookName) and 第一版社 =ltrim(BookPublish);9. Delete_Reader的定义:create procedure Delete_ReaderReaNo char(9)asdeletefrom Readerwhere ReaNo = ltrim(ReaNo);10. Delete_Book 的定义:create procedure Delete_BookBookID char(9)asdeletefrom Bookwhere BookID= ltrim(BookID);七实验小结此次实验使我熟习了怎样独立的成立一个系统,经过自己所学的知识,综合运用,并认识自己的不足之处。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2