数据库基础
1、数据库基本概念
(1)为什么使用数据库----数据库是用来储存数据的地方,是数据存储的仓库
(2)数据库的作用
a、数据存储方便
b、数据管理查询方便
2、时下流行的数据库
(1)关系型数据库:Oracle Oracle公司,产品免费,服务收费
Mysql 开方源代码,网站应用广泛
SQLServer 版本多,使用方便
DB2 硬件要求必须是IBM产品
(2)非关系型数据库(NoSQL)
Hadoop
Google的BigTable
3、数据库的基本概念
数据库的数据储存主要依赖于 数据表
在数据表中,数据组成了 行和列
每一行数据称之为一条 记录,也称为 元组
每一列数据称之为一个 属性
在数据库中,有多张 数据表
数据库表与表之间是有关系的,称该数据库为关系型数据库
4、数据库的设计
(1)为什么要设计数据库
让数据库存储更加有条理性,方便存储和读取数据
(2)数据库设计在软件开发中,属于系统设计阶段
5、数据库设计的步骤:
(1)根据系统需求及功能模块抽象出ER图(把现实世界转换成虚拟世界)
重点:把项目的需求转换成计算机可描述的语言
(2)标记处实体、属性、实体与实体之间的关系
(3)实体与实体之间的关系以及实体与属性之间的关系图,及ER图
(4)根据数据设计的范式要求,规范数据库的表
(5)将规范好的数据表键在数据库中
6、数据库设计的案列
(1)酒店管理系统的基本功能:
旅客办理入住手续:后台数据库需要存放入住客人的信息和客房信息
客房信息:后台数据库需要存放客房的相关信息,如:床位号、床位数、价格等
客房管理:后台数据库需要保存客房类型信息和客房当前状态信息
(2)标记实体(实体一般都是名词,分析出功能名称中的名词)
(3)属性(特征,描述实体的特征的名词)
旅客:姓名、性别、身份证号、电话号码、登记时间、入住人数
客房:房间号、房间类型、房间价格、床位、房间装状态
(4)绘制ER图
关系:旅客 入住 客房
实体:矩形
属性:椭圆形
关系:菱形
(5)分析实体和实体之间的关系
对应关系:一对一、一对多、多对多
(6)制作表格
a、绘制ER图
b、制作表格步骤:
1、每个实体相当于一个独立的表格
2、实体与实体之间的关系,如果是多对多,必须要有一张关系表(又叫关联表,这张表描述了两张表的特征)
c、每个实体的属性都应该成为这个表的字段(列表)
旅客信息表:
客房信息表:
入住信息表:
(7)使用数据库三范式规范表格:
1、什么是范式:范式是设计具有良好结构的数据库基础
2、范式作用:范式利用规范化过程将ER模型中的实体转换为表
3、按照三范式修改数据表格
第一范式:要求每条数据具有可辨别性,通常每张表有一个ID(编号)用于区分每条数据,编号不可重复(在关联表中,可以让多个列共同构成标识列)主键:唯一标识一个记录的列
旅客信息表:
第二范式:一张表值描述一件事
就是拆表,使之一个表就只描述一件事
第三范式:数据列不可出现计算列