图书库存管理系统数据库SQLWord格式文档下载.docx
《图书库存管理系统数据库SQLWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《图书库存管理系统数据库SQLWord格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。
用E-R图一一描述这些实体。
2.1.1类别实体E-R图:
图2-1类别实体E-R图
2.1.2读者信息实体E-R图:
图2-2读者信息实体E-R图
2.1.3信息实体E-R图:
图2-3信息实体E-R图
2.1.4.记录信息实体E-R图:
图2-4记录信息实体E-R图
2.1.5记录信息实体E-R图:
图2-5记录信息实体E-R图
2.1.5.总的信息实体E-R图:
总的信息实体E-R图
三、数据库源代码
3.1数据库建立
3.1.1创建数据库
USEmaster
GO
CREATEDATABASElibrarysystem
ON
(NAME=librarysystem,
FILENAME='
d:
\librarysystem.mdf'
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5)
LOGON
(NAME='
library'
\librarysystem.ldf'
SIZE=5MB,
MAXSIZE=25MB,
FILEGROWTH=5MB)
3.1.2书本类别表建立
createtablebook_style
(
bookstylenovarchar(30)primarykey,
bookstylevarchar(30)
)
3.1.3创建书库表
createtablesystem_books
bookidvarchar(20)primarykey,
booknamevarchar(30)Notnull,
bookstylenovarchar(30)Notnull,
bookauthorvarchar(30),
bookpubvarchar(30),
bookpubdatedatetime,
bookindatedatetime,
isborrowedvarchar
(2),
foreignkey(bookstyleno)referencesbook_style(bookstyleno),
3.1.4借书证表建立
createtablesystem_readers
(readeridvarchar(9)primarykey,
readernamevarchar(9)notnull,
readersexvarchar
(2)notnull,
readertypevarchar(10),
regdatedatetime
3.1.5借书记录表建立
createtableborrow_record
(bookidvarchar(20)primarykey,
readeridvarchar(9),
borrowdatedatetime,
foreignkey(bookid)referencessystem_books(bookid),
foreignkey(readerid)referencessystem_readers(readerid),
3.1.6还书记录表建立
createtablereturn_record
returndatedatetime,
foreignkey(readerid)referencessystem_readers(readerid)
3.2数据初始化
3.2.1将书籍类别加入表book_style中
insertintobook_style(bookstyleno,bookstyle)values('
1'
'
人文艺术类'
)
2'
自然科学类'
3'
社会科学类'
4'
图片艺术类'
5'
政治经济类'
6'
工程技术类'
7'
语言技能类'
3.2.2将已有的图书加入system_books表中(定义相同的作者出版社的书本编号不一样)
insert
intosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)
values('
00125415152'
计算机组成原理'
王爱英'
清华大学出版社'
2001-01-03'
2003-11-15'
);
insert
00125415153'
intosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)
00456456'
数据库原理'
萨师煊'
高等教育出版社'
2007-07-02'
2007-09-15'
12215121'
C程序设计'
谭浩强'
2002-04-02'
2004-03-14'
9787308020558'
计算机体系结构'
石教英'
浙江大学出版社'
2004-10-03'
2006-11-15'
45456141414'
数据结构(C语言版)'
吴伟民,严蔚敏'
2002-06-28'
2004-01-21'
5455515'
中华历史5000年'
吴强'
北京大学出版社'
2005-04-03'
2006-05-15'
015115'
古代埃及'
赵文华'
2001-02-02'
2002-09-15'
1514514'
日本文化'
吴小鹏'
15154656'
微观经济学'
李小刚'
2000-10-03'
2001-11-15'
5658'
影视文学'
苏庆东'
1999-02-28'
2000-01-21'
insertinto
system_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)
565800020'
探索宇宙奥秘'
3.2.3将已有图书证的读者加入system_readers表中*/
insertintosystem_readers(readerid,readername,readersex,readertype,regdate)
X05620207'
陈远鹏'
男'
学生'
2005-9-2314:
23:
56'
X05620206'
陈特'
2005-09-3013:
24:
54.623'
X05620204'
赵铭静'
女'
2005-09-2711:
54.123'
X05620202'
潘虹'
54.473'
008415'
蒋伟'
教师'
2004-04-3009:
54.478'
001456'
李叶风'
3.2.4添加已借书读者的记录,同时将在已借出的借阅标记置0*/
insertintoborrow_record(bookid,readerid,borrowdate)
2007-09-2711:
updatesystem_books
setisborrowed=0
wherebookid='
2007-12-2708:
26:
51.452'
andisborrowed='
2007-10-2112:
11:
2007-12-2814:
51.312'
2007-08-2815:
31.512'
四、实验数据示例:
测试阶段
4.1单表查询
4.1.1表book_style中查询演示:
图4-1表book_style中内容
4.1.2表system_books中查询演示:
图4-2表system_books中内容
4.1.3将已有图书证的读者加入system_readers表中结果查询:
图4-3表system_readers中内容
4.1.4借书纪录表borrow_record结果查询:
图4-4表borrow_record中内容
4.2还书操作
4.2.1现在对某一读者进行还书操作:
1.首先还书要在还书纪录中添加一条还书纪录
2.其次删除相应书本的借阅纪录
3.最后在书库中标记该本书为1,表示归还了未借,可供其他读者借阅
说明:
学号为X05620207姓名为陈远鹏借阅的565800020书籍编号进行归还。
SQL语言:
insertintoreturn_record(bookid,readerid,returndate)
selectbookid,readerid,getdate()
fromborrow_record
(所影响的行数为1行)
delete
setisborrowed=1
三个表的结果如图:
图4-5增加了565800020纪录
图4-6565800020这本书在借书纪录里没有了
图4-7标记设为了‘1’
这本书重新回到未被借出标记为1(注,相同的书其编号是不同的)
其结果为还书成功,相应的各表都有变化,对于罚款单通过借阅记录表borrow_record中更新。
4.3借书操作
4.3.1查询未被借出的书本:
图4-8
4.3.2查询已被借出的书本:
图4-9
4.3.3申请借书证:
Insertintosystem_readers(readerid,readername,readersex,readertype,regdate)
X05620211'
小华'
getdate())
图4-10
查询相应的纪录增加了小华这样一个读者的借书证纪录:
4.3.4注销借书证:
1.在注销之前执行所有的还书过程,就是上面写到的所述SQL语句,然后执行
deletefromsystem_readerswherereaderid='
X05620211'
2.小华借书证纪录就被删除了,同时要删除和小华归还纪录的内容
deletefromreturn_recordwherereaderid='
4.3.5查询所有书所对应的类别:
图4-11
4.4书籍状态
4.4.1查询所有工技术类的书:
图4-12
4.4.2查询清华大学出版社出版的书:
图4-13
4.5读者状态
4.5.1查询什么人借了什么书:
图4-14
4.5.2查询潘虹借了什么书:
图4-15
五、课程设计心得
通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对灵据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,将SQL语的查询语句用得淋漓尽致,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。
虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。