数据库的相关概念
- 数据库:DB,存储数据的仓库,数据是有组织的进行存储。
- 数据库管理系统:DBMS,操纵和管理数据库的大型软件。
- SQL:操作关系型数据库的编程语言,定义了一套操作关系型数据库的统一标准。
- 关系型数据库:RDBMMS,建立在关系模型基础上,由多张相互连接的二维表组成的数据库。
- 二维表
mysql常用的命令
# 检查mysql的版本号
mysql --version
mysql -V
# 启动或者关闭mysql服务
net start mysql
net stop mysql
# mysql客户端连接,使用这种方式需要配置mysql的环境变量
mysql -u root -p
# 查询mysql的安装路径
where mysql
数据模型
当客户端连接到数据库服务器,数据库服务器会管理多个数据库,数据存储在数据库中的表中。
一、数据库模型分层
- 概念模型——以用户的角度去对现实世界的抽象,主要用于数据库的设计。常见的有实体-联系模型(E-R模型)和面向对象模型(O-O模型)
- 逻辑模型——从计算机角度来看待这个世界,主要用于数据库的实现。常见有层次模型、网状模型、关系模型
- 物理模型——从计算机底层的物理层的角度考虑数据的物理存储结构和方法
主要的关系如下:
二、数据模型的组成元素 - 数据结构——描述的是实体(也就是对象)之间的联系,它与对象的类型、内容、性质以及对象之间的联系都有关系,所描述的对象类型的集合,是对系统的静态特性的描述。(举一个例子就是说我们定义一个“东西”,它叫鸡蛋,这个鸡蛋是论个的,不是论斤也不是论一篮子的)
- 数据操作——对数据的增删改查,是对系统的动态特性的描述
- 数据完整性约束——这些抽象数据在现实世界的逻辑约束(比如性别只有男女之分,不可能有第三性别吧;再比如说我们要选修一门课程,但是选修这门课程的前提是这门课程要开吧)
三、三种常见的模型 - 层次模型(一对多的关系)——用树状结构来描述实体之间的联系,特点是查找数据要按照路径查看,孩子节点不能脱离父母节点独立存在
- 网状模型(多对多的关系)——就是用数据结构里面的图来定义数据之间的关系,但是太复杂了
- 关系模型(二维表)
1、数据结构:是一张二维表
2、数据操作:增删改查
3、数据约束:实体完整性、参照完整性、用户自定义完整性
四、数据库三级模式
1、模式: - 也称为逻辑模式,对应于逻辑层数据抽象,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。有点类似于面向对象中的类
- 模式的一个具体值称为模式的一个实例(instance)
- 它是DBMS模式结构的中间层,既不涉及数据的物理存储细节和硬件环境,也与具体的应用程序、所使用的应用开发工具及高级程序设计语言无关
2、外模式:对应于视图层的数据抽象,是用户权限下能看到的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,一般用来保证数据库的安全
3、内模式:也叫存储模式,对应于物理层的数据抽象
五、数据库的两个映象
1、模式与外模式的一对多的映象关系
2、模式与内模式之间的一对一的关系