图书共享的设计解析
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
捐赠表(捐书者的学号,捐赠图书的编号,捐书的时间)
书籍借阅(图书编号,借阅者的学号,借阅时间,归还时间,续借情况,罚款记录)
四、物理结构设计
数据库名:class book corner
数据库物理文件初始大小:10MB
是否允许自动增长:是
自动增长方式:每次增加5MB
最大数据容量:不受限
是否自动收缩:是
1.班级图书共享的图书为班级同学的捐赠,捐赠时管理员记录捐赠人的姓名,学号,性别,联系方式,捐书时间,捐书姓名,捐书数量,书的好坏程度的情况。
2.每位同学每次只能借一本书,借阅时间为一个月,到期允许续借,期限也为一个月,每本书只有一次可以续借的机会。如果超过借书期限,每天收费0.1元,如有破损则借书者按照损坏程度进行赔偿。
varchar
20
否
外键,引用student表中主键sno
btime
datetime
8
否
借阅时间
brtime
dቤተ መጻሕፍቲ ባይዱtetime
8
否
归还时间
bqk
float
8
否
超过归还时间,每天0.1元,欠款为1,
不欠款为0
bxj
int
4
否
续借次数
bkj
bit
1
否
是否可借(1为可借。0为不可借)
捐书表
表名
donate
作用
ssex
char
10
否
性别
spnum
varchar
20
否
联系电话
图书表
表名
book
作用
图书信息
列名
数据类型
长度
是否允许为空
字段说明
bno
varchar
20
否
主键,图书标号
bname
varchar
50
否
书名
bauthor
varchar
50
否
作者
bsl
Int
4
否
数量
btype
varchar
50
否
图书类型
5.查询捐了三本书的学生的姓名
Select sname
From student
Where sno=(select dsno
From donate
Group by
Having count(‘20130101’)=3)
创建视图
(1)视图名称:借书信息;显示:图书编号,图书名,借书者学号,借书者姓名。
Create view借书信息
3.管理员需要记录下借阅学生的姓名,学号,性别,联系方式,借书时间和借阅书籍的名字。还要负责将同学们捐来的书籍进行分类,防止同名书的混淆,并给书目编号。
4.统计出捐书数目最多的人,奖励一本书籍。
二,概念结构设计
1.书籍
2.学生
3.整体结构
三、逻辑结构设计
学生(姓名,学号,性别,联系方式)
图书(书名,图书编号,作者,数量,类别,污损情况)
From student
Where sname=’孙菲’)
4.查询孙菲借书的书名
Select bname
From book
Where bno=(select bnumber
From borrow
Where snumber=(select sno
From student
Where sname=’孙菲’))
bsituation
varchar
100
否
污损情况
brenew
bit
1
否
续借情况,1(可续借),0(不可续借)
借阅表
表名
borrow
作用
借阅信息
列名
数据类型
长度
是否允许为空
字段说明
bnumber
varchar
20
否
外键,引用book表中的主键bno
Bnumber与snumber共同为主键
snumber
create view每个学生捐书的数量
as
select dsno as'学生学号',count(*) as'捐书总数'
from donate
图书共享的设计
一.需求分析
为了能够使学生通过书本了解更多的知识,丰富自己的知识储备,我们班建立一个图书角供学生们互相交换图书进行阅览。图书角的书籍来源是学生的捐赠,捐赠的书籍需要根据内容进行分类,借阅书籍需要进行相关的记录,借阅的同学必须按时归还书籍,安排图书角管理员,保证图书角能够正常开放。
该数据库的主要是实现图书捐赠,图书管理,图书借阅信息的功能。
(3)视图名称:图书污损情况,显示:损坏书籍的编号,书名,捐献者和书籍类型
create view图书污损情况
as
select bno as'图书编号',bname as'图书名称',btype as'书籍类型'
from book
where bsituation='污损'
(4)视图名称:每个学生捐书的数量显示;学生姓名,捐书总数
是否是只读数据库:否
事务日志文件位置:f:\class book corner
事务日志文件初始大小:1MB
事务日志文件最大数据容量:20 MB
创建如下数据表:
学生表
表名
student
作用
学生信息
列名
数据类型
长度
是否允许为空
字段说明
sno
varchar
20
否
主键,学号
sname
varchar
50
否
学生姓名
From student
Where sno=’20130105’
2.查询捐了书的编号为’007’学生姓名
select sname
from student,donate
where student.sno=donate.dsno
3.查询孙菲捐书的书的编号
Select dbno
From donate
Where dno=(select sno
捐书信息
列名
数据类型
长度
是否允许为空
字段说明
dsno
varchar
20
否
外键,引用student表中的主键sno
dbno
varchar
20
否
外键,引用book表中主键bno
dsno和dbno共同为主键
dtime
datetime
8
否
捐书时间
查询
1.查询学号为’20130105’的学生姓名和联系电话。
Select sname,spnum
create view捐书信息
as
select dsno as '捐书人学号',dbno as'捐书的编号',dtime as'捐书时间',sname as'捐书人姓名',bname as'书籍名称'
from donate inner join student on dsno=sno inner join book on dbno=bno
As
Select bno as'图书编号',bname as'图书名称',sno as'借书人学号',sname as'借书人姓名'
From borrow inner join book on bno=bnumber inner join student on sno=snumber
(2)视图名称:捐书信息,显示:图书编号,图书名,捐书人学号,捐书人姓名和捐书时间
书籍借阅(图书编号,借阅者的学号,借阅时间,归还时间,续借情况,罚款记录)
四、物理结构设计
数据库名:class book corner
数据库物理文件初始大小:10MB
是否允许自动增长:是
自动增长方式:每次增加5MB
最大数据容量:不受限
是否自动收缩:是
1.班级图书共享的图书为班级同学的捐赠,捐赠时管理员记录捐赠人的姓名,学号,性别,联系方式,捐书时间,捐书姓名,捐书数量,书的好坏程度的情况。
2.每位同学每次只能借一本书,借阅时间为一个月,到期允许续借,期限也为一个月,每本书只有一次可以续借的机会。如果超过借书期限,每天收费0.1元,如有破损则借书者按照损坏程度进行赔偿。
varchar
20
否
外键,引用student表中主键sno
btime
datetime
8
否
借阅时间
brtime
dቤተ መጻሕፍቲ ባይዱtetime
8
否
归还时间
bqk
float
8
否
超过归还时间,每天0.1元,欠款为1,
不欠款为0
bxj
int
4
否
续借次数
bkj
bit
1
否
是否可借(1为可借。0为不可借)
捐书表
表名
donate
作用
ssex
char
10
否
性别
spnum
varchar
20
否
联系电话
图书表
表名
book
作用
图书信息
列名
数据类型
长度
是否允许为空
字段说明
bno
varchar
20
否
主键,图书标号
bname
varchar
50
否
书名
bauthor
varchar
50
否
作者
bsl
Int
4
否
数量
btype
varchar
50
否
图书类型
5.查询捐了三本书的学生的姓名
Select sname
From student
Where sno=(select dsno
From donate
Group by
Having count(‘20130101’)=3)
创建视图
(1)视图名称:借书信息;显示:图书编号,图书名,借书者学号,借书者姓名。
Create view借书信息
3.管理员需要记录下借阅学生的姓名,学号,性别,联系方式,借书时间和借阅书籍的名字。还要负责将同学们捐来的书籍进行分类,防止同名书的混淆,并给书目编号。
4.统计出捐书数目最多的人,奖励一本书籍。
二,概念结构设计
1.书籍
2.学生
3.整体结构
三、逻辑结构设计
学生(姓名,学号,性别,联系方式)
图书(书名,图书编号,作者,数量,类别,污损情况)
From student
Where sname=’孙菲’)
4.查询孙菲借书的书名
Select bname
From book
Where bno=(select bnumber
From borrow
Where snumber=(select sno
From student
Where sname=’孙菲’))
bsituation
varchar
100
否
污损情况
brenew
bit
1
否
续借情况,1(可续借),0(不可续借)
借阅表
表名
borrow
作用
借阅信息
列名
数据类型
长度
是否允许为空
字段说明
bnumber
varchar
20
否
外键,引用book表中的主键bno
Bnumber与snumber共同为主键
snumber
create view每个学生捐书的数量
as
select dsno as'学生学号',count(*) as'捐书总数'
from donate
图书共享的设计
一.需求分析
为了能够使学生通过书本了解更多的知识,丰富自己的知识储备,我们班建立一个图书角供学生们互相交换图书进行阅览。图书角的书籍来源是学生的捐赠,捐赠的书籍需要根据内容进行分类,借阅书籍需要进行相关的记录,借阅的同学必须按时归还书籍,安排图书角管理员,保证图书角能够正常开放。
该数据库的主要是实现图书捐赠,图书管理,图书借阅信息的功能。
(3)视图名称:图书污损情况,显示:损坏书籍的编号,书名,捐献者和书籍类型
create view图书污损情况
as
select bno as'图书编号',bname as'图书名称',btype as'书籍类型'
from book
where bsituation='污损'
(4)视图名称:每个学生捐书的数量显示;学生姓名,捐书总数
是否是只读数据库:否
事务日志文件位置:f:\class book corner
事务日志文件初始大小:1MB
事务日志文件最大数据容量:20 MB
创建如下数据表:
学生表
表名
student
作用
学生信息
列名
数据类型
长度
是否允许为空
字段说明
sno
varchar
20
否
主键,学号
sname
varchar
50
否
学生姓名
From student
Where sno=’20130105’
2.查询捐了书的编号为’007’学生姓名
select sname
from student,donate
where student.sno=donate.dsno
3.查询孙菲捐书的书的编号
Select dbno
From donate
Where dno=(select sno
捐书信息
列名
数据类型
长度
是否允许为空
字段说明
dsno
varchar
20
否
外键,引用student表中的主键sno
dbno
varchar
20
否
外键,引用book表中主键bno
dsno和dbno共同为主键
dtime
datetime
8
否
捐书时间
查询
1.查询学号为’20130105’的学生姓名和联系电话。
Select sname,spnum
create view捐书信息
as
select dsno as '捐书人学号',dbno as'捐书的编号',dtime as'捐书时间',sname as'捐书人姓名',bname as'书籍名称'
from donate inner join student on dsno=sno inner join book on dbno=bno
As
Select bno as'图书编号',bname as'图书名称',sno as'借书人学号',sname as'借书人姓名'
From borrow inner join book on bno=bnumber inner join student on sno=snumber
(2)视图名称:捐书信息,显示:图书编号,图书名,捐书人学号,捐书人姓名和捐书时间