1.为什么要使用数据库?
2.数据库与数据库管理系统
2.1 数据库的相关概念
2.2 数据库与数据库管理系统的关系
数据库管理系统(DBMS)可以管理多个数据库,一般开发人员会针对没一个应用创建一个数据库。为保存应用中实体的数据局,一般会在数据库中创建多个表,以保存程序中实体用户的数据。
数据库管理系统、数据库和表的关系如图所示:
3 MySQL介绍
3.1 概述
·MySQL是一个开放源代码的关系型数据库管理系统(RDBMS)
3.2 为什么选择MySQL?
4 RDBMS与非RDBMS
关系型数据库是DBMS的主流,其中使用最多的DBMS分别是Oracle、MySQL和SQL Server,这些都是关系型数据库(RDBMS)
4.1 关系型数据库 (RDBMS)
4.1.1 实质
·这种类型的数据库是最古老的数据库类型,关系型数据库模型就是把复杂的数据结构归结为简单的二元关系(即二维表格形式)
·关系型数据库以行(row)和列(column)的形式存储数据,以便于用户理解,这一系列的行和列被称为表(table),一组表组成了一个库(database)
·表与表之间的数据记录有关系(relationship)。现实世界中的各个实体以及实体之间的各种联系均用关系模型来表示。关系型数据库,就是建立在关系模型基础上的数据库
·SQL就是关系型数据库的查询语言
4.1.2 优势
·复杂查询 可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询
·事务支持 使得对于安全性能很高的数据访问要求得以实现
4.2 非关系型数据库(非RDBMS)
(不是此文章关注重点,不做赘述)
5.关系型数据库设计规则
·关系型数据库的典型数据结构就是数据表,这些数据表的组成都是结构化的
·将数据放到表中,表再放到库中
·一个数据库中可以有多个表,每个表都有一个名字,用来标识自己,表名具有唯一性
·表具有一些特性,这些特性定义了数据在表中如何存储,类似Java和Python中"类"的设计
5.1 表、记录、字段
·E-R(entity-relationship,实体-联系)模型中有三个主要概念是:实体集、属性、联系集
·一个实体集(class)对应于数据库中的一个表(table),一个实体(instance)则对应于数据库表中的一行(row),也称为一条记录(record)。一个属性(attribute)对应于数据库表中的一列(column),也称为一个字段(field)
5.2 表的关联关系
·表与表之间的数据记录有关系(relationship)。现实世界中的各个实体以及实体之间的各种联系均用关系模型来表示
·四种:一对一关联、一对多关联、多对多关联、自我引用
5.2.1 一对一关联(one-to-one)
5.2.2 一对多关联(one-to-many)
5.2.3 多对多关联(many-to-many)
5.2.4 自我引用(self reference)