再学mysql
数据库设计的两个原则:
1.三范式:
第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列;
第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键,二是没有包含在主键中的列必须完全依赖于主键,而不能依赖于主键的一部分。
第三范式(3NF):首先是 2NF,另外非主键列必须直接依赖于主键,不能存在间接依赖,即不能存在:非主键列A依赖于非主键列B,非主键列B依赖于主键的情况。
2.E-R模型(实体-关系模型):一对一,一对多,多对多
视图:
通俗的讲,视图就是一条SELECT语句执行后返回的结果,视图是对若干张基本表的引用,一张虚表,查询语句执行的结果。
定义视图:
create view 视图名称 as select语句;
视图只是用来查询,不能改。
视图的作用
1.提高了重用性,就像一个函数;
2.对数据库重构,却不影响程序的运行;
3.提高了安全性能,可以对不同的用户;
4.让数据更加清晰
事务:
所谓事务,他是一个操作序列,这些操作要么执行,要么都不执行。他是一个不可分割的工作单位。
事务四大特性(简称ACID)
A:原子性
C:一致性
I:隔离性
D:持久性
索引:
索引是一种特殊的文件。它们包含着对数据表理所有记录的引用指针。
更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。
索引的使用:
查看索引
show index from 表名;
创建索引
create index 索引名称 on 表名(字段名称(长度))
删除索引
drop index 索引名称 on 表名;
人生就是要不断折腾