基础知识
- MySQL是一个关系型数据库管理系统(RDBMS)
- RDBMS(Relational Database Management System)的特点:
- 数据以表格的形式出现
- 每行为各种记录名称
- 每列为记录名称所对应的数据域
- 许多的行和列组成一张表单
- 若干的表单组成database
- 数据库中的一些术语:
- 元组:元组(tuple)是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,每列就是一个属性
- 冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性
- 主键:主键是唯一的。一个数据表中只能包含一个主键
- 外键:在一个表中存在另外一个表的主键叫做外键
- 索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录
- 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引
数据类型
- MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型
- 具体类型及描述信息见:MySQL 数据类型
索引
常见要点Q&A
- 索引
- 索引是对数据库中一或多个列值的排序,用来加快数据检索速度
- 索引缺点:
- 插入 删除 修改 维护速度下降
- 占用物理和数据空间
- 事务
- 事务(Transaction)是并发控制的基本单位。事务就是一系列的操作,这些操作要么都执行,要么都不执行
- 事务的四个特征:
- Atomic(原子性):事务中的一系列的操作要么都完成,要么全部失败
- Consistency(一致性):在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏
- Isolation(隔离性):隔离状态执行事务,使它们好像是系统在给定时间内执行的唯一操作。如果有两个事务,运行在相同的时间内,执行 相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在使用系统。这种属性有时称为串行化,为了防止事务操作间的混淆,必须串行化或序列化请求,使得在同一时间仅有一个请求用于同一数据
- Durability(持久性):在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚
- 视图的作用,视图可以更改么?
- 视图是虚拟的表,与包含数据的表不一样,视图只包含使用时动态检索数据的查询;不包含任何列或数据。使用视图可以简化复杂的sql操作,隐藏具体的细节,保护数据;视图创建后,可以使用与表相同的方式利用它们
- 视图不能被索引,也不能有关联的触发器或默认值,如果视图本身内有order by 则对视图再次order by将被覆盖
- 创建视图:create view XXX as XXXXXXXXXXXXXX
- 对于某些视图比如未使用联结子查询分组聚集函数Distinct Union等,是可以对其更新的,对视图的更新将对基表进行更新;但是视图主要用于简化检索,保护数据,并不用于更新,而且大部分视图都不可以更新
posted @
2019-07-10 10:26
云野Winfield
阅读(
198)
评论()
编辑
收藏
举报