一、 简介
1、数据库的相关概念
-
DB
:数据库
即存储数据的“仓库”,其本质是一个文件系统。保存了一系列有组织的数据
-
DBMS
:数据库管理系统
是操纵和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制。用户通过DBMS
访问数据库中表内的数据
-
SQL
:结构化查询语言
专门用来与数据库通信的语言
2、Oracle & MySQL
- oracle更适合大型跨国企业的使用,因为对收费不敏感,但是对性能以及安全性有更高的要求
- MySQL由于其体积小、速度快、总体拥有成本低,可处理上千万条的大型数据库,尤其是开放源代码的特点,使得很多互联网公司、中小型网站选择
二、RDBMS与非RDBMS
1、关系型数据库
1)实质
- 关系型数据库模型把复杂的数据结构归结为简单的二元关系(即二维表格形式)
- 关系型数据库以以行和列的形式存储数据,这一些列的行和列被称为表,一组表组成一个数据库
- 表与表之间的数据记录有关系。现实世界中的各个实体以及实体之间的各种关系均以关系模型来表示
- SQL就是关系型数据库的查询语言
2)优势
- 复杂查询
- 事务支持
2、非关系型数据库(NoSQL)
1)介绍
- 非关系型数据库,可以看成传统数据库的阉割版本,基于键值对存储数据,不需要经过SQL层的解析,性能非常高
2)类别
- 键值型、文档型、搜索引擎和列存储等类型的数据库
三、关系型数据库设计原则
1、表、记录、字段
- E-R模型中的三个主要概念:实体集、属性、联系集
- 一个实体集对应于数据库中的一张表,一个实体则对应数据库中的一行,也称为一条记录
- 一个属性对应数据库表中的一列,也成为一个字段
2、对应ORM思想(Object Relational Mapping)
- 数据库中的一张表 --> 一个类
- 表中的一条记录 --> 类中的一个对象(或实体)
- 表中的一个列 --> 类中的一个在字段(属性)
3、表的关联关系
- 表与表之间的数据记录有关系。现实世界的各个实体之间的各种联系均用关系模型来表示
- 关系的种类:一对一,一对多,多对多,自我引用
1)一对一关系
- 应用不多,可以建成一张表
- 两种建表原则
- 外键唯一:主表的主键和从表的外键(唯一),形成主外键关系,外键唯一
- 外键是主键:主表的主键和从表的主键,形成主外键关系
2)一对多关系
- 建表原则:在从表(多方)创建一个字段,字段作为外键指向主表(一方)的主键
3)多对多关系
4)自我引用