1、Mysql 表与表之间的三种关系
表与表之间一般存在三种关系,即一对一,一对多,多对多关系。
1、一对一
查找一个文章并显示每个文章的分类
笛卡尔连接
内连接
2、一对多
一篇文章只能属于一个类型
但是有多篇文章,一对多
3、多对多
一个学生可以选修多门课程
一门课程也可以被多个学生选修
1、查询张三选修了那些课程
普通查询
2、查询 Java 程序设计被那些学生选修了
2、Mysql 笛卡尔积连接、内连接、左外连接、右外连接
查询数据的时候能不用连接语句尽量不要使用,笛卡尔积连接查询速度最慢,项目中用的比 较多的是内连接。 笛卡尔积连接:
内连接
3、Mysql 索引
MySQL 索引的建立对于 MySQL 的高效运行是很重要的,索引可以大大提高 MySQL 的检索速度。
如果没有索引,执行查询时候必须从第一条记录开始,扫描整个表的记录,直到符合要求的记录。如 果有了索引,mysql 无需扫描任何记录即可顺序找到目标记录的位置。简单说来, 索引就是提高查 找数据速度,数据量越多,效果越明显。
Mysql 中常见的索引类型有普通索引、唯一索引、全文索引、空间索引 Spatial
4、Mysql 事务
事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。
5、Mysql 锁
Mysql 中的锁有表级锁和行级锁,这里主要给大家讲讲最常用的表级锁