(二)数据库的组成结构
(三)数据库的分类
1、关系型数据库:mysql
2、非关系型数据库:redis、es
(1)关系型数据库当中,表里面的数据是关联的,表和表之间的数据也是关联起来的
(2)重点:多表关联、最多可以关联几张表?(最多三张表、再多会降低查询数据的性能)
1、5.5之前:MYISAM,不支持事务和外键的存储引擎,适用于读得多,写得好
2、5.6之后,默认的存储引擎(Innodb),可以支持事务、外键,行级锁定的存储引擎,支持高并发性能的应用
(1)在数据库中,一个或者多个操作组成的数据操作的序列,这些操作要么全部成功,要么失败一个就全部不执行,确保数据一致性和完整性
(1)原子性。数据库最小的工作单位,要么全部执行成功,要么全部不执行,只要有一个操作失败,整个执行的序列都会被回滚,完成的操作也会被撤销
(2)一致性。事务执行前后,数据库的完整性约束不能被破坏,只有在满足所有的约束条件情况下,事务才能被提交
(3)隔离性。事务的执行是相互隔离,一个事务的执行不能受到其他执行事务的干扰,并发事务之间相互隔离,防止数据不一致的情况发生
(4)持久性。事务一旦提交,他所做的所有修改会被永久的保存在数据库中,既是系统崩溃,提交的数据也不会丢失
database | 数据库 |
table | 表 |
row | 行 |
column | 列 |
index | 索引 |
view | 视图 |
procedure | 存储过程 |
trigger | 触发器 |
user | 用户 |
privilege | 权限 |
int | 4个字节,用来存储整数,范围很大 |
char(字符串类型) | 固定长度的字符串类型,用来存储固定长度的字符串 |
varchar(字符串类型) | 可变长度的字符串类型,存储可变长度的字符串(不可以无限制的随便写,要根据类型的长度) |
‘ ‘ ——char固定占4个字节,二varchar占1个字节 ‘ab’——char占4个字节,varchar占3个字节 | |
1、char:无论是否定义值,都会占用固定长度的字节大小 2、varchar:在保存时,例如固定14,实际长度占5个,最后占用长度为6个字节(5个+1个隐藏符) 3、varchar比char节省磁盘空间,但是varchar读写速度比char慢 字符窜类型,一定要用单引号引起 | |
float(m,d) | 单精度浮点数,存储浮点数,m表示总位数,d表示小数位 |
double(m,d) | 双精度浮点数,存储浮点数,m表示总位数,d表示小数位 |
text | 用于存储大文本数据,例如:文档,长字符串 |
image | 二进制存储图像,图片、多媒体 |
decimal(5,2) | 用于存储固定精度的小数,5表示总位数,2表示小数位 |
date | 存储日期:yyyy-mm-dd |
datetime | 存储日期:yyyy-mm-dd HH:MM:SS(时:分:秒) |
timestamp | 和datetime的格式一样,可以自动更新为当前的时间戳 |
(2)新建表、删除表
(3)修改表名
(4)修改表的结构
(5)修改列名
(6)删除列
(7)修改列的数据类型
(2)update更新