数据库原理实训报告.docx
- 文档编号:12199177
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:21
- 大小:489.02KB
数据库原理实训报告.docx
《数据库原理实训报告.docx》由会员分享,可在线阅读,更多相关《数据库原理实训报告.docx(21页珍藏版)》请在冰豆网上搜索。
数据库原理实训报告
数据库原理实训报告
1.实训题目
实训题目:
图书馆图书管理系统。
图书馆图书管理系统对于学校图书馆的管理十分重要,所以,图书馆图书管理系统不但要为图书管理者提供充足的信息和快捷的查询手段,也要为学生查询提供必要和快捷的查询手段,但一直以来人们仍使用传统人工的方式管理图书系统,这种管理方式存在着许多缺点,如:
效率低、工作量大等,而且,随着图书数量的增长,对于图书信息的查找、更新和维护都带来了不少的困难。
此外,计算机技术的不断成熟与发展使得对信息管理的应用成为可能。
正是这样,图书馆图书管理系统在图书馆管理中发挥了重要的作用。
2.实训目的
(1)知识目标
·掌握数据库基本原理,理解关系数据库的设计方法、设计思路。
·初步掌握一种关系数据库语言,例如SQLServer。
(2)能力与技能目标
通过本实训,学生应能掌握:
·SQLServer7.0/2000的操作与使用。
·数据库的概念设计与逻辑设计
·数据库的建立与管理、数据表的建立与操作等。
·SQL查询语言的使用与编程。
·设计和开发一个数据库应用系统的数据库设计部分。
·学会编写实训报告
(3)素质目标
·质量意识:
重视质量,意识到质量的企业生存的前提和保障。
·工程规意识:
工作中严格遵守工程规,不以个人的好恶任意操作。
·团队精神:
具有合作精神、协调工作能力和组织管理能力。
·较强的自我知识技术更新能力:
快速跟踪数据库系统软件的新技术及市场应用动态。
3.数据库概念设计
数据库的概念设计就是画出E-R图。
分析前面的系统功能要求,需要一个表来存储和管理图书信息,一个表来存储和管理读者信息,这样使系统能够借阅时需要的各项数据,以实现数据录入,查询或统计等功能。
图书和读者是本系统的两个实体。
为了能使两个实体联系起来并实现读者对图书的借阅,需要再建立一个表来记录读者所借阅的图书。
据此可以得出图书馆图书管理系统数据库的E-R图,如下:
实体属性列表如下:
图书
书号
书名
类别
作者
定价
出版时间
读者
编号
性别
借阅
串号
书号
编号
借阅时间
4.数据库逻辑设计
将数据库的概念模型转换为关系模型
实体转换成的关系模式有:
图书(书号,书名,类别,,定价,出版时间),
读者(编号,,性别,),
借阅(串号,书号,编号,借阅时间),
带下划线的属性为各关系模式的主码,字体为粗体的属性为各关系模式的外码。
在以上关系中,实体中的每个属性都是简单属性,都是不可再分的,实体遵循第一式;
对于图书模式,有
属性集={书号,书名,类别,,定价,出版时间}。
函数依赖集={书号→书名,书号→类别,书号→,书号→定价,书号→出版时间}。
主码={书号}。
非主属性={书名,类别,,定价,出版时间}。
非主属性对码的依赖={书号F→书名,书号F→书名,书号F→类别,书号F→,书号F→定价,书号F→出版时间}。
显然图书关系遵循第二式,同理,读者关系,借阅关系也遵循第二式。
实体属性之间不存在码,属性组及非主属性间的传递函数依赖,所以以上关系同样遵循第三式。
5.数据库的建立
(1)从“开始”菜单中的SQLServer程序组中启动SQLServer企业管理器,打开“SQLServerEnterpriseManager”窗口。
(2)新建数据库,如下
将数据库名称命名为“图书馆图书管理系统”。
这样,图书馆图书管理系统数据库就建好了。
接下来就是要建立数据表了。
6.数据表的设计和关系图
数据库设计是根据系统功能的要求和数据规模规划数据库服务器选型、数据表结构定义、分配数据库服务器端的功能实现以及创建数据库对象。
在SQL数据库中需要建立3个数据表:
图书信息表、读者信息表和借阅关系表。
(1)数据表的设计
(1)图书信息表的定义
图书信息表存储图书的详细信息,供读者参考使用及管理使用。
为每本图书设置一个唯一的书号,以便在数据库中使用。
图书信息表的结构定义如下所示:
列名
数据类型
大小
约束
键
属性
书号
INT
4
主键
主码
书名
CHAR
20
NOTNULL
非主属性
类别
CHAR
8
非主属性
CHAR
10
非主属性
作者
CHAR
10
非主属性
定价
CHAR
10
非主属性
出版时间
CHAR
10
非主属性
(2)读者信息表的定义
读者信息表存储读者的详细信息,为每一个读者设置一个唯一的编号以便在数据库中使用。
读者信息表的结构定义如下所示:
列名
数据类型
大小
约束
键
属性
编号
INT
4
主键
主码
CHAR
8
NOTNULL
非主属性
性别
CHAR
2
‘男’,‘女’
非主属性
INT
4
非主属性
(3)借阅关系表的定义
借阅关系表存储读者所借阅的图书信息。
借阅关系表的结构定义如下所示:
列名
数据类型
大小
约束
键
属性
串号
INT
4
主键
主码
书号
INT
4
外码
外码
编号
INT
4
外码
外码
借阅时间
INT
4
非主属性
(2)数据完整性约束
(1)主键约束、非空值约束
三个表中都有主键,在图书表和读者表中,书号和编号是主键,因为一个图书馆中可能一种书不只只有一本,也许有多本,读者也可能会重名的,所以以书名和为主键显然不太合适,所以另高一个编码来表示,能保证数据的唯一。
在借阅表中,串号是主键。
用书号和编号做为主码似乎也是可以的,但是,前面提到,一个图书馆中同样的书可能不只一本,而读者也可能会借几本同样的书,所有另高一个编码做为主码较为合适。
在图书表和读者表中,书名和都是不能为空的,这样才能知道所借的是什么书。
(2)CHECK约束
在读者表中,读者的性别只能是“男”或“女”,所有需要有相CHECK约束,来检查所输入的值是否是“男”或“女”,来保证数据的准确性和正确性。
(3)外键约束
在借阅表中,书号是图书表的外键,编号是读者表中的外键。
通过设置外键以保证数据的惟一性和正确性。
(3)数据表的建立
启动SQL查询分析器,并输入命令,建立数据表。
(1)图书表的建立
输入命令:
CREATETABLE图书(
书号INTPRIMARYKEYCLUSTERED,
书名CHAR(20)NOTNULL,
类别CHAR(8),
CHAR(20),
作者CHAR(10),
定价CHAR(10),
出版时间CHAR(10))
执行命令。
(2)读者表的建立
输入命令:
CREATETABLE读者(
编号INTPRIMARYKEYCLUSTERED,
CHAR(8),
性别CHAR
(2)DEFAULT'男'CHECK(性别IN('男','女')),
INT)
执行命令。
(3)借阅表的建立
输入命令:
CREATETABLE借阅(
串号INTPRIMARYKEYCLUSTERED,
书号INTREFERENCES图书(书号),
编号INTREFERENCES读者(编号),
借阅时间INT)
执行命令。
(4)数据表数据的录入
为图书表录入数据
为读者表录入数据
为借阅表录入数据
(5)关系图的建立
关系图是表之间的,用一个表中的外健引用另一个表中的主健。
关系线的终结点显示一个主键符号一表示主键到外键的关系,或者显示一个无穷符号以表示一对多关系的外键端。
使用SQLServer2000的企业管理器创建关系图,步骤如下:
(1)在左边数据库中的关系图上鼠标右键,单击“新建数据库关系图”,如下图。
(2)单击“下一步”,如下图。
(3)在左边的可用的表中将图书,读者,借阅表添加到右边,单击“下一步”。
(4)单击“完成”。
(5)在上面步骤完成后就出现如下的关系图。
7.简单查询和复杂查询
(1).简单查询
简单查询就是SELECT-----FROM------WHERE查询。
(1)查询所有图书的信息
输入命令:
SELECT*
FROM图书
(2)查询所有读者的信息
输入命令:
SELECT*
FROM读者
(3)查询类别为军事的图书
输入命令:
SELECT*
FROM图书
WHERE类别='军事'
(4)查询机械工业出版的图书
输入命令:
SELECT*
FROM图书
WHERE='机械工业'
(5)查询作者为猫小乐的图书
输入命令:
SELECT*
FROM图书
WHERE作者='猫小乐'
(6)查询出版时间在2005年以后的图书
输入命令:
SELECT*
FROM图书
WHERE出版时间>2005
(7)查询所有的女读者
输入命令:
SELECT*
FROM读者
WHERE性别='女'
(8)查询为森森的读者
输入命令:
SELECT*
FROM读者
WHERE='森森'
(2).复杂查询
复杂查询包括连接查询、嵌套查询、分组查询、组合查询等。
(1)查询读者及其所借阅的图书的书名(连接查询)
输入命令:
SELECT读者.,图书.书名
FROM读者,图书,借阅
WHERE读者.编号=借阅.编号AND图书.书号=借阅.书号
(2)查询读者志文所借阅的图书书名(嵌套查询)
输入命令:
SELECT图书.书名
FROM图书
WHERE图书.书号IN(SELECT借阅.书号
FROM借阅
WHERE借阅.编号IN(SELECT读者.编号
FROM读者
WHERE读者.='志文'))
(3)查询图书类别及其图书数量(分组查询)
输入命令:
SELECT类别,COUNT(书号)
FROM图书
GROUPBY类别
(4)查询类别为计算机类或军事类的图书信息(组合查询)
输入命令:
SELECT*
FROM图书
WHERE类别='计算机'
UNION
SELECT*
FROM图书
WHERE类别='军事'
8.视图的创建
创建读者视图,容包括读者信息及其所借阅图书的信息。
输入命令:
CREATEVIEW读者视图
ASSELECT读者.*,图书.*
FROM图书,借阅,读者
WHERE图书.书号=借阅.书号AND借阅.编号=读者.编号
查询视图,输入命令:
SELECT*
FROM读者视图
9.数据库的维护
数据库的维护和管理包括数据的插入和删除。
当新增图书或者读者时,通过数据的插入使新增的数据在数据库的增加。
相反,当去除图书或诸者时,通过数据的删除来使数据在数据库在删除。
当读者要借书时,就通过数据的插入在借阅表中新增一条记录,而当读者要还书时,就通过数据的删除将借阅表中的记录删除。
(1).数据的插入
(1)图书信息的插入
INSERT
INTO图书
VALUES(6001,'经济学原理','管理学','邮电大学','慧凤等','32','2007')
(2)读者信息的插入
INSERT
INTO读者
VALUES(11023,'洪某某','男',86169620)
(3)借阅信息的插入
INSERT
INTO借阅
VALUES(10013,5002,11023,20110216)
(2).数据的删除
(1)删除书名为经济学原理的书的信息
DELETE
FROM图书
WHERE书名='经济学原理'
(2)删除为王五的读者的信息
DELETE
FROM读者
WHERE='王五'
(3)删除串号为10013的借阅信息
DELETE
FROM借阅
WHERE串号=10013
10.数据库的备份
对数据库进行备份,
(1)启动SQL企业管理器。
在需要备份的数据库中鼠标单击右键—所有任务—备份数据库,如下图所示。
(2)在目的里单击添加,选择要备份到的位置,单击确定。
(3)完成备份。
当需要从备份数据库中恢复数据库时
(1)如下图,单击还原数据库。
(2)单击确定
完成。
11.个人总结
略
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 报告