数据库图书馆管理系统Word格式文档下载.docx
《数据库图书馆管理系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据库图书馆管理系统Word格式文档下载.docx(20页珍藏版)》请在冰豆网上搜索。
④书籍类别信息的查询、修改,包括类别编号、类别名称。
⑤书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。
⑥书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期,登记日期等。
⑦借书信息的输入,包括读者借书证编号、书籍编号、借书日期。
⑧借书信息的查询、修改,包括借书证编号,读者姓名、书籍编号、书籍名称、借书日期等。
⑨还书信息的输入,包括借书证编号、书籍编号、还书日期。
⑩还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。
⑾超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。
⑿超期还书罚款查询,删除,包括读者借书证编号、读者姓名、书籍编号、书籍名称,罚款金额等
⒀管理员管理:
包括创建读者用户信息、删除读者用户信息、添加图书信息、删除图书信息。
⒁超级管理员管理:
包括创建管理员用户信息、删除管理员用户信息、创建读者用户信息、删除读者用户信息、添加图书信息、删除图书信息。
(2)事物需求
①在读者信息管理部分,要求:
a.可以查询读者信息。
b.可以对读者信息进行添加及删除的操作。
②在书籍信息管理部分,要求:
a.可以浏览书籍信息
b.可以对书籍信息进行维护,包括添加及删除的操作。
③在借阅信息管理部分,要求:
。
a.可以浏览借阅信息。
b.可以对借阅信息进行维护操作。
④在归还信息管理部分,要求:
a.可以浏览归还信息
b.对归还信息可修改维护操作
⑤在管理者信息管理部分,要求:
a.显示当前数据库中管理者情况。
b.对管理者信息维护操作。
⑥在罚款信息管理部分,要求:
a.可以浏览罚款信息
b.对罚款信息可以更新
(3)关系模式
(1)书籍类别(类别编号,类别名)
(2)读者(借书证编号,读者姓名,读者性别,读者种类,登记时期,可借书数,已借书数,逾期未还书数)
(3)管理员(管理员编号,管理员姓名,管理员密码,管理员权限)
(4)超级管理员(管理员编号,管理员姓名,管理员密码,管理员权限)
(5)书籍(书籍编号,书籍名称,书籍类别,书籍作者,出版社名称,出版日期,登记日期)
(6)借阅(借书证编号,书籍编号,读者借书时间)
(7)还书(借书证编号,书籍编号,读者还书时间)
(8)罚款(借书证编号,读者姓名,借书证编号,书籍编号,读者借书时间)
2概要设计
(1)实体图及E-R图
根据1)所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。
图书管理信息系统可以划分的实体有:
书籍类别信息实体、读者信息实体、书籍信息实体、借阅记录信息实体,归还记录信息实体。
用E-R图一一描述这些实体。
a.读者信息实体图:
图2-1读者实体及其属性图
b.管理员实体图
图2-2管理员实体及其属性图
c..书籍实体图:
图2-3书籍实体及其属性图
d.借阅记录信息实体图:
图2-4借阅记录信息实体及其属性图
e.归还记录信息实体图:
图2-5记录信息实体及其属性图
f.罚款信息实体图:
图2-6罚款信息实体及其属性图
g.总的信息实体E-R图
图2-7总的信息实体E-R图
3逻辑设计
表3-1 book_sytle书籍类别信息表
表中列名
数据类型
可否为空
说明
类别编号
varchar
notnull(主键)
种类编号
类别名称
Varchar
notnull
种类名称
表3-2 system_readers读者信息表格
读者借书证号
读者姓名
读者性别
读者种类
可借书数
datetime
null
登记日期
书名
int
已借书数
逾期未还书数
表3-3 system_book书籍信息表
书籍编号
Notnull(主键)
书籍名称
Notnull
续表3-3
书籍类别
书籍作者
书籍出版社
Null
出版社名称
出版时间
Datetime
出版日期
收录时间
是否被借
Bit
NotNull
是否被借出
表3-4 borrow_record借阅记录信息表
Notnull(外主键)
读者借阅证编号
书籍类别编号
借阅时间
读者借书时间
表3-5 return_record借阅记录信息表
归还时间
读者还书时间
表3-6 reader_fee罚款记录信息表
读者借书证编号
罚款金额
Smallmoney
表3-7system_Administrator管理员信息表
管理员编号
管理员姓名
管理员密码
管理员权限
表3-8system_Super_Administrator管理员信息表
超级管理员姓名
超级管理员密码
超级管理员
4关系图:
图2-8数据库存表关系图
5物理设计
数据库物理设计阶段的任务是根据具体计算机系统(DBMS和硬件等)的特点,为给定的数据库模型确定合理的存储结构和存取方法。
所谓的“合理”主要有两个含义:
一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。
主要体现在后者。
(1)建立索引:
①对book_style表在bookstyleno属性列上建立聚集索引,在bookstyle属性列上建立非聚集索引。
②对System_book表在bookid上建立聚集索引,在bookname、bookstyleno、boookauther、bookpub上建立非聚集索引。
③对return_record表在bookid上建立聚集索引,在readerid上建立非聚集索引
④对reader_fee表在bookid上建立聚集索引,在readerid上建立非聚集索引。
⑤对system_reader表在readerid列上建立聚集索引
⑥对boorow_record表在bookid上建立聚集所以,在readerid上建立非聚集索引
⑦对system_Administrator表在administratorid列上建立聚集索引。
⑧对system_Super_Administrator表在superadministratorid上建立聚集索引。
(2)存储结构
确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。
将日志文件和数据库对象(表、索引等)分别放在不同的磁盘可以改进系统的性能。
所以系统将日志文件和数据文件存放在不同磁盘上。
6数据库建立
(1)创建数据库
USEmaster
GO
CREATEDATABASElibrarysystem
ON
(NAME=librarysystem,
FILENAME='
d:
\librarysystem.mdf'
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5)
LOGON
(NAME='
library'
e:
\librarysystem.ldf'
SIZE=5MB,
MAXSIZE=25MB,
FILEGROWTH=5MB)
--
(2)书本类别表建立
createtablebook_style
(
类别编号varchar(30)primarykey,
类别名称varchar(30)
)
go
--(3)创建书库表
createtablesystem_books
书籍编号varchar(20)primarykey,
书籍名称varchar(30)Notnull,
书籍类别编号varchar(30)Notnull,
书籍作者varchar(30),
书籍出版社varchar(30),
出版时间datetime,
书籍收录时间datetime,
是否被借bit,
foreignkey(书籍类别编号)referencesbook_style(书籍类别编号),
--(4)读者信息表建立
createtablesystem_readers
(读者借书证号varchar(9)primarykey,
读者姓名varchar(9)notnull,
读者性别varchar
(2)notnull,
读者种类varchar(10),
登记时间datetime,
可借书数int,
已借书数int,
逾期未还书数int
--(5)借书记录表建立
createtableborrow_record
(书籍编号varchar(20)primarykey,
读者借书证号varchar(9),
借阅时间datetime,
foreignkey(书籍编号)referencessystem_books(书籍编号),
foreignkey(读者借书证号)referencessystem_readers(读者借书证号),
--(6)还书记录表建立
createtablereturn_record
(书籍编号varchar(20)primarykey,
归还时间datetime,
foreignkey(读者借书证号)referencessystem_readers(读者借书证号)
)
--(7)罚款单表建立*/
createtablereader_fee
(读者借书证号varchar(9)notnull,
读者姓名varchar(9)notnull,
书籍编号varchar(20)primarykey,
罚款金额smallmoney,
借书时间datetime,
--(8)管理员表建立
createtablesystem_Administrator
(管理员编号varchar(9)primarykey,
管理员姓名varchar(9)notnull,
管理员密码varchar
(2)notnull,
管理权限varchar(10)
)
--(9)超级管理员表建立
createtablesystem_super_Administrator
(超级管理员编号varchar(9)primarykey,
超级管理员姓名varchar(9)notnull,
超级管理员密码varchar
(2)notnull,
超级管理员权限varchar(10)
go
(10)索引的创建
uselibrarysystem
createindexbookstyle_index_styleonbook_style(书籍类别)
createindexborrow_record_index_readeridonborrow_record(读者借书证号)
createindexreader_fee_index_readeridonreader_fee(读者借书证号)
createindexreturn_record_index_readeridonreturn_record(读者借书证号)
createindexsystem_books_index_booknameonsystem_books(书籍名称)
createindexsystem_books_index_stylenoonsystem_books(书籍类别编号)
createindexsystem_books_index_bookauthoronsystem_books(书籍作者)
7数据初始化
(1)将书籍类别加入表book_style中
insertintobook_style(书籍类别编号,书籍类别)values('
1'
'
人文艺术类'
2'
自然科学类'
3'
社会科学类'
4'
图片艺术类'
5'
政治经济类'
6'
工程技术类'
7'
语言技能类'
(2)将已有的图书加入system_books表中(定义相同的作者出版社的书本编号不一样)
insertintosystem_books(书籍编号,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)
values('
002'
计算机组成原理'
王爱英'
清华大学出版社'
2001-01-03'
2003-11-15'
);
insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)
003'
insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)
00456456'
数据库原理'
萨师煊'
高等教育出版社'
2007-07-02'
2007-09-15'
'
C程序设计'
谭浩强'
2002-04-02'
2004-03-14'
20558'
计算机体系结构'
石教英'
浙江大学出版社'
2004-10-03'
2006-11-15'
414'
数据结构(C语言版)'
吴伟民,严蔚敏'
2002-06-28'
2004-01-21'
5455515'
中华历史5000年'
吴强'
北京大学出版社'
2005-04-03'
2006-05-15'
015115'
古代埃及'
赵文华'
2001-02-02'
2002-09-15'
1514514'
日本文化'
吴小鹏'
微观经济学'
李小刚'
2000-10-03'
2001-11-15'
5658'
影视文学'
苏庆东'
1999-02-28'
2000-01-21'
0'
探索宇宙奥秘'
2