mysql数据库视图与索引

一、视图

定义:基于查询结果而生成的虚表。对表的增删改查操作,对于视图同样成立,只不过写表名的地方写成了视图名字。

1. 创建视图

格式:

create view 视图名字 as select 查询语句;

2. 修改视图

格式:

alter view 视图名字 as select 查询语句;

3. 向视图插入数据

格式:

insert into 视图名字 values (值1,值2,...);

注意:对视图进行增删改操作,原表也会受到影响

4. 更新视图的数据

格式:

update 视图名字 set 列名=值 where 条件;

5. 删除视图数据

格式:

delete from 视图名字 where 条件;

6. 删除整个视图

格式:

drop view 视图名字;

7. 视图的使用场景

1)工作中要获取的数据来源于多张表,接住视图把数据整合
2)某些用户对原表没有操作权限,只有查看权限,借助于查看生成一个视图,然后对视图进行增删改操作

二、索引

1. 索引

针对某个列来创建,创建索引的列能帮助我们更快获取信息,等同于书本的目录,加快查询的速度

2. 索引的优点

1)加快检索速度
2)保证数据唯一性
3)实现表与表之间参照完整性
4)在使用group by和order by语句时,会减少分组和排序时间

3. 索引的缺点

1)创建索引会消耗数据空间和花费一定时间
2)查询速度变快了,但是增删改的速度会变慢
3)避免对经常更新的表建立过多索引,保持索引较窄
4)对小表建立索引可能不会产生优化效果
5)建立多个索引可以提升更新少,数据量大的查询性能

4. 优先考虑建立索引的列

1)有主键或者外键的列
2)快速频繁查找的列
3)连接中使用的列
4)在分组或者排序中频繁使用的列

5. 索引类型

1)普通索引:

create index 索引名字 on 表名(列名);

2)唯一索引

create unique index 索引名字 on 表名(列名);

3)删除索引

drop index 索引名字 on 表名;

mysql数据库结束!

猜你喜欢

转载自blog.csdn.net/yang_yang_heng/article/details/107516216