管理数据库图书馆管理系统.docx

上传人:b****3 文档编号:27171552 上传时间:2023-06-27 格式:DOCX 页数:20 大小:133.20KB
下载 相关 举报
管理数据库图书馆管理系统.docx_第1页
第1页 / 共20页
管理数据库图书馆管理系统.docx_第2页
第2页 / 共20页
管理数据库图书馆管理系统.docx_第3页
第3页 / 共20页
管理数据库图书馆管理系统.docx_第4页
第4页 / 共20页
管理数据库图书馆管理系统.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

管理数据库图书馆管理系统.docx

《管理数据库图书馆管理系统.docx》由会员分享,可在线阅读,更多相关《管理数据库图书馆管理系统.docx(20页珍藏版)》请在冰豆网上搜索。

管理数据库图书馆管理系统.docx

管理数据库图书馆管理系统

一.课程设计目的

数据库课程设计是为数据库原理及应用课程而独立开设的实践性课程,对于巩固数据库知识,加强学生的实际动手能力和提高学生综合素质十分必要。

通过本实验达到以下目的:

(1)熟练掌握一种数据库系统(如SQLSERVER)的使用。

(2)熟练掌握一种数据库应用软件开发工具的使用。

(3)通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力,提高分析问题和解决问题的能力。

二.课程设计任务与要求:

1、任务:

图书管理系统

问题描述:

1)学校图书室有各种图书几十万余册。

2)每种图书都有书名、书号(ISBN)、一名或多名作者(译者)、出版社等。

3)借书证记录有借阅者的借书证编号,读者姓名,读者性别,读者种类,登记时期等。

4)凭借书证借书,学生每次最多能借5本书,借书期限最长为30天,老师每次最多能借10本,借书期限最长为60天。

2、设计要求:

1)实现新进图书的数据录入和下架图书的数据删除。

2)实现借阅者图书证信息的录入和删除。

3)实现对所有购进图书的分类查询和分类统计。

4)能够按书名、作者等分类查询现有图书的数量。

5)能够记录借阅者的个人资料和所借图书的书名、书号、借书时间等

6)能够进行借书还书处理。

7)能够进行借书逾期罚款处理。

8)能够进行用户管理。

9)设计一完整的数据库。

要求掌握数据库的设计的每个步骤;掌握数据设计各阶段的输入、输出、设计环境、目标和方法;熟练的使用SQL语言实现数据库以及数据库重要对象的建立、应用和维护。

三.课程设计说明书

1需求分析

(1)数据需求

图书馆管理信息系统需要完成功能主要有:

①读者基本信息的输入,包括借书证编号、读者姓名、读者性别等。

②读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。

③书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。

④书籍类别信息的查询、修改,包括类别编号、类别名称。

⑤书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。

⑥书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期,登记日期等。

⑦借书信息的输入,包括读者借书证编号、书籍编号、借书日期。

⑧借书信息的查询、修改,包括借书证编号,读者姓名、书籍编号、书籍名称、借书日期等。

⑨还书信息的输入,包括借书证编号、书籍编号、还书日期。

⑩还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。

⑾超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。

⑿超期还书罚款查询,删除,包括读者借书证编号、读者姓名、书籍编号、书籍名称,罚款金额等

⒀管理员管理:

包括创建读者用户信息、删除读者用户信息、添加图书信息、删除图书信息。

⒁超级管理员管理:

包括创建管理员用户信息、删除管理员用户信息、创建读者用户信息、删除读者用户信息、添加图书信息、删除图书信息。

(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读者信息表格

表中列名

数据类型

可否为空

说明

读者借书证号

varchar

notnull(主键)

读者借书证号

读者姓名

varchar

notnull

读者姓名

读者性别

varchar

notnull

读者性别

读者种类

varchar

notnull

读者种类

可借书数

datetime

null

登记日期

书名

int

null

可借书数

已借书数

int

null

已借书数

逾期未还书数

int

null

逾期未还书数

表3-3 system_book书籍信息表

表中列名

数据类型

可否为空

说明

书籍编号

Varchar

Notnull(主键)

书籍编号

书籍名称

Varchar

Notnull

书籍名称

续表3-3

书籍类别

Varchar

Notnull

书籍类别

书籍作者

Varchar

Notnull

书籍作者

书籍出版社

Varchar

Null

出版社名称

出版时间

Datetime

Null

出版日期

收录时间

Datetime

Null

登记日期

是否被借

Bit

NotNull

是否被借出

表3-4 borrow_record借阅记录信息表

表中列名

数据类型

可否为空

说明

读者借书证号

Varchar

Notnull(外主键)

读者借阅证编号

书籍类别编号

Varchar

Notnull(外主键)

书籍编号

借阅时间

Datetime

Notnull

读者借书时间

表3-5 return_record借阅记录信息表

表中列名

数据类型

可否为空

说明

读者姓名

Varchar

Notnull(外主键)

读者借阅证编号

读者借书证号

Varchar

Notnull(外主键)

书籍编号

归还时间

datetime

Notnull

读者还书时间

表3-6 reader_fee罚款记录信息表

表中列名

数据类型

可否为空

说明

读者借书证号

varchar

Notnull

读者借书证编号

读者姓名

varchar

Notnull

读者姓名

书籍类别编号

varchar

Notnull(外主键)

书籍编号

书籍名称

varchar

Notnull

书籍名称

罚款金额

Smallmoney

NotNull

罚款金额

借阅时间

datetime

NotNull

借阅时间

表3-7system_Administrator管理员信息表

表中列名

数据类型

可否为空

说明

管理员编号

varchar

notnull(主键)

管理员编号

管理员姓名

varchar

notnull

管理员姓名

管理员密码

varchar

notnull

管理员密码

管理员权限

varchar

notnull

管理员权限

表3-8system_Super_Administrator管理员信息表

表中列名

数据类型

可否为空

说明

管理员编号

varchar

notnull(主键)

管理员编号

超级管理员姓名

varchar

notnull

管理员姓名

超级管理员密码

varchar

notnull

管理员密码

超级管理员

varchar

notnull

管理员权限

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',

FILENAME='e:

\librarysystem.ldf',

SIZE=5MB,

MAXSIZE=25MB,

FILEGROWTH=5MB)

GO

--

(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(书籍类别编号),

go

--(4)读者信息表建立

createtablesystem_readers

(读者借书证号varchar(9)primarykey,

读者姓名varchar(9)notnull,

读者性别varchar

(2)notnull,

读者种类varchar(10),

登记时间datetime,

可借书数int,

已借书数int,

逾期未还书数int

go

--(5)借书记录表建立

createtableborrow_record

(书籍编号varchar(20)primarykey,

读者借书证号varchar(9),

借阅时间datetime,

foreignkey(书籍编号)referencessystem_books(书籍编号),

foreignkey(读者借书证号)referencessystem_readers(读者借书证号),

go

--(6)还书记录表建立

createtablereturn_record

(书籍编号varchar(20)primarykey,

读者借书证号varchar(9),

归还时间datetime,

foreignkey(书籍编号)referencessystem_books(书籍编号),

foreignkey(读者借书证号)referencessystem_readers(读者借书证号)

go

--(7)罚款单表建立*/

createtablereader_fee

(读者借书证号varchar(9)notnull,

读者姓名varchar(9)notnull,

书籍编号varchar(20)primarykey,

书籍名称varchar(30)Notnull,

罚款金额smallmoney,

借书时间datetime,

foreignkey(书籍编号)referencessystem_books(书籍编号),

foreignkey(读者借书证号)referencessystem_readers(读者借书证号)

go

--(8)管理员表建立

createtablesystem_Administrator

(管理员编号varchar(9)primarykey,

管理员姓名varchar(9)notnull,

管理员密码varchar

(2)notnull,

管理权限varchar(10)

go

--(9)超级管理员表建立

createtablesystem_super_Administrator

(超级管理员编号varchar(9)primarykey,

超级管理员姓名varchar(9)notnull,

超级管理员密码varchar

(2)notnull,

超级管理员权限varchar(10)

go

(10)索引的创建

uselibrarysystem

go

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','人文艺术类')

insertintobook_style(书籍类别编号,书籍类别)values('2','自然科学类')

insertintobook_style(书籍类别编号,书籍类别)values('3','社会科学类')

insertintobook_style(书籍类别编号,书籍类别)values('4','图片艺术类')

insertintobook_style(书籍类别编号,书籍类别)values('5','政治经济类')

insertintobook_style(书籍类别编号,书籍类别)values('6','工程技术类')

insertintobook_style(书籍类别编号,书籍类别)values('7','语言技能类')

(2)将已有的图书加入system_books表中(定义相同的作者出版社的书本编号不一样)

insertintosystem_books(书籍编号,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('002','计算机组成原理','6','王爱英','清华大学出版社','2001-01-03','2003-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('003','计算机组成原理','6','王爱英','清华大学出版社','2001-01-03','2003-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('00456456','数据库原理','6','萨师煊','高等教育出版社','2007-07-02','2007-09-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('','C程序设计','6','谭浩强','清华大学出版社','2002-04-02','2004-03-14','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('20558','计算机体系结构','6','石教英','浙江大学出版社','2004-10-03','2006-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('414','数据结构(C语言版)','6','吴伟民,严蔚敏','清华大学出版社','2002-06-28','2004-01-21','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('5455515','中华历史5000年','1','吴强','北京大学出版社','2005-04-03','2006-05-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('015115','古代埃及','3','赵文华','北京大学出版社','2001-02-02','2002-09-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('1514514','日本文化','1','吴小鹏','北京大学出版社','2002-04-02','2004-03-14','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('','微观经济学','5','李小刚','北京大学出版社','2000-10-03','2001-11-15','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('5658','影视文学','4','苏庆东','北京大学出版社','1999-02-28','2000-01-21','1');

insertintosystem_books(bookid,bookname,bookstyleno,bookauthor,bookpub,bookpubdate,bookindate,isborrowed)

values('0','探索宇宙奥秘','2','苏庆东','北京大学出版社','1999-02-28','2000-01-21','1');

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1