1、视图
1.1.视图:基于查询结果的虚表
1.2.作用:方便用户对数据的操作:
- 对原表权限不够的情况可以用视图来操作(对视图的操作也会影响到原表)
- 视图可能来源多个表。
格式:create view 视图名 as select 查询语句;
1.3.修改视图的数据:三种格式通用
update 视图的名字 set 列名=值 where 条件;
1.4.删除视图的数据:两种格式通用。
delete from 表名 where 条件;
1.5.删除视图:
drop view 视图的名字;
视图只能根据实际存在的表来进行创建,不能根据视图再来创建视图。
2、索引
2.1.优点:
- 加快查询的速度
- 保证数据的唯一性(唯一索引)
- 实现表与表之间的参照完整性
- 当使用group by,order by的操作,减少分组,排序的时间
- 索引可以提升更新少而数据量大的查询操作
2.2.索引的缺点:
- 创建索引需要消耗一定的数据空间,还需要一定的时间
- 索引的使用会影响增删改的操作时间。
- 对小表建立索引可能不会产生优化的效果
2.3.优先考虑建立索引的列:
- 定义有主键和外键的列
- 在指定范围中快速或频繁查找的列
- 连接过程中频繁使用的列
- 分组,排序中经常用到的列
2.4.索引的分类:
1 普通索引
2.唯一性索引
3 全文索引
4.单列索引
5.多列索引
6.空间索引
2.5.创建索引:
create index 索引的名字 on 表名(列名);
唯一索引:
create unique index 索引的名字 on 表名(列名);
例:- 给student表的sno列 建立一个索引
create index index_sno on student(sno);