图书馆里系统之数据库基础

在开发图书管理系统之前首先要做的是数据库的设计,要想做一个完整的项目,数据库就决定了这个项目的成败,所以本系统采用SQL Server2005数据库,当然SQL  Server2008数据库也行。在设计数据库时要注意创建表的方式,使用create关键字创建一张表,这样的好处是不管使用哪个类型的数据库(针对2005和2008而言),只要数据库代码复制后直接运行就可以用很方便的创建表,而不需要每次都去创建新表。下面是一些本系统涉及到的表,感兴趣的可以看一下!

数据库概念结构设计

读者实体:读者编号、读者姓名、出生日期、性别、电话、所在院系、注册日期

读者类型:读者类型编号、读者类型名称、可借阅天数、可借阅数量

图书实体:图书编号ISBN、图书名称、作者、出版社、出版日期、印刷次数、单价、图书类型

用户:用户编号、用户名、密码

数据库逻辑结构设计

1)图书(图书编号ISBN,图书类型编号,图书名称,作者,出版社,出版日期,印刷次数,单价)

2)图书类型(图书类型编号,图书类型名称)

3)读者(读者编号,读者类型编号,姓名,年龄,性别,电话,所在系部,注册日期)

4)读者类型(读者类型编号,读者类型名称,最多可借图书数量,最长可借图书天数)

5)用户(用户编号,用户名,密码)

6)图书借阅(读者编号,图书编号,借阅日期,归还日期,罚金)

3.1.3 数据库物理结构设计

数据库管理系统选择SQL Server2005,根据SQL Server2005特点,设计数据表如下:

1 读者信息表 reader

字段名

类型

长度

是否为空

描述

readerid

char

8

读者编号(主键)

type

int

 

读者类型编号

name

char

20

读者姓名

age

int

 

年龄

sex

char

4

性别

phone

char

11

联系电话

dept

varchar

20

所在系部

regdate

date

 

注册日期

 

2 读者类型表 readertype

字段名

类型

长度

是否为空

描述

id

int

 

读者类型编号(主键)

typename

varchar

20

读者类型名称

maxborrownum

int

 

最多可借阅图书数量

limit

int

 

最长可借阅图书天数

 

3  用户表users

字段名

类型

长度

是否为空

描述

id

int

 

用户编号(主键)

name

varchar

20

用户名称

password

varchar

20

用户密码

4 图书信息表 book

字段名

类型

长度

是否为空

描述

ISBN

char

10

图书的ISBN(主键)

typeid

varchar

10

图书类型编号

bookname

varchar

30

图书名称

author

varchar

30

作者

publish

varchar

30

出版社

publishdate

date

 

出版日期

publishtime

int

 

印刷次数

unitprice

money

 

单价

 

5 图书类型表 booktype

字段名

类型

长度

是否为空

描述

id

int

 

图书类型编号(主键)

typename

varchar

30

图书类型名称

 

6 图书借阅表      表6图书借阅表bookborrow

字段名

类型

长度

是否为空

描述

readerid

char

8

读者编号(组合主键)

ISBN

char

10

图书ISBN(组合主键)

borrowdate

date

 

借阅日期

returndate

date

 

归还日期

fine

money

 

罚金


设计后的表如下:

1:book表

2:booktype表


3:bookborrow表


4:reader表


5:readertype表


6:users表





  • 8
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该代码文件用于本科生计算机科学与技术专业数据库课程设计,图书借阅管理子系统数据库用户名sa,密码gsw,数据库名名称BookManageSystem,这些都可以在DButil.java文件修改。功能有学生账号注册登录借书还书,罚款计算,同时设有管理员,账号固定在login.Java代码为administrator,密码password,可自行在代码修改,管理员可查询图书情况,学生账户情况,修改图书信息等等功能,内容十分简单,十分适合大二大三本科生参考 设计本系统模拟学生在图书馆借阅图书的管理内容,包括查询图书、借书、借阅后的查询、统计、超期罚款等的处理情况,简化的系统需要管理的情况如下: 1、可随时查询出可借阅图书的详细情况,如图书编号(BNO)、图书名称(BNA)、出版日期(BDA)、图书出版社(BPU)、图书存放位置(BPL)、图书总数量(BNU)等,这样便于学生选借。 2、学生查询图书情况后即可借阅所需图书,可借阅多种图书,每种图书一般只借一本,若已有图书超期请交清罚金后,才能开始本次借阅; 3、为了唯一标识每一学生,图书室办借书证需如下信息:学生姓名(SNA)、学生系别(SDE)、学生所学专业(SSP)、借书上限数(SUP)及唯一的借书证号(SNO)。 4、每学生一次可借多本书,但不能超出该生允许借阅上限数,每个学生可多次借阅,允许重复借阅同一本书。规定借书期限为二个月,超期每天罚二分。 5、学生可以进行借阅、续借、归还和查询书籍。借阅时要登记相应的借书日期;归还时要记录还书日期;续借相当于归还书后重新借阅。 根据以上信息完成如下要求: 1、请认真作系统需求分析,设计出反映本系统的E-R图(需求分析、概念设计)。 2、写出已设计E-R图相应的关系模式,根据设计需要还可增加辅助关系模式,并找出各关系模式的关键字(逻辑设计)。 3、在已设计的关系模式基础上开发设计功能子系统,要求子系统能完成如下功能要求(物理设计、设施与试运行): 1)在某数据库管理系统建立各关系模式对应的库表,并设计所需的视图、索引等。 2)能对各库表进行输入、修改、删除、添加、查询、打印等基本操作。 3)能根据学生要求借阅图书库有的书,并完成一次借阅任务后汇总已借书本总数,报告还可借书量,已超期的需付清罚款金额后才可借书。 4)能明细查询某学生的借书情况及图书的借出情况。 5)能统计出某图书的总借出数量与库存量及某学生借书总数,当天为止总罚金。 6)其他你认为子系统应有的查询、统计功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值