mysql的视图、索引

  • 一、视图
  • 1、什么是视图
  • 2、视图的作用
  • 3、基本语法
  • 4、查询语法
  • 二、索引
  • 1、什么是索引
  • 2、在数据库系统中建立索引主要有以下作用
  • 3、索引的优缺点
  • 4、索引的类型
  • 5、创建索引
  • 6、修改索引
  • 7、删除索引


一、视图

1、什么是视图

1):视图是一种虚拟的表,是从数据库中一个或者多个表导出来的的表;
2):数据库中存放了视图的定义,而并没有存放视图的数据,这些数据还是保存在原来的表中,也可以理解为视图保存的是查询的语句
3):使用视图查询数据时,会从原来的表中取出对应的数据

2、视图的作用

1)、使操作简便化;
2)、增加数据的安全性,轻易接触不到表的原数据;
3)、提高表的逻辑独立性。

3、基本语法

create view 视图名 as select 语句;

4、查询语法

select * from v_view(视图名)

二、索引

1、什么是索引

索引是为了加速对表中数据行的检索而创建的一种分散的存储结构。索引是针对表而建立的。它是由数据页面以外的索引页面组成的,每个索引页面中的行都会含有逻辑指针,以便加强检索物理数据。类似于图书的目录,方便快速查询,寻找指定的内容。

2、在数据库系统中建立索引主要有以下作用

1)、快速取数据
2)、保证数据记录的唯一性
3)、实现表与表之间的参照完整性
4)、在使用order by、group by 子句进行数据检索时,利用索引可以减少排序和分组的时间。

3、索引的优缺点

优点:
1)、大大加快数据库的检索速度;
2)、创建唯一性索引,保证数据库表中每一行数据的唯一性;
3)、加速表和表之间的连接;
4)、在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。
缺点:
1)、索引需要占用物理空间
2)、当对表中的数据进行增加、删除、修改的时,可以显著减少查询中分组和排序的时间

4、索引的类型

1)、普通索引:是最基本的索引,它没有人和限制;
2)、唯一索引:与前面的索引类似,不同就是:索引列的值必须唯一,但允许有空值,如果是组合索引,则列值的组合必须是唯一的。
3)、主键索引:是一种特殊的唯一索引,一个表只能有一个主键,不允许有空值;
4)、组合索引:指多个字段上创建的索引,只有在查询条件中使用了创建索引时的第一个字段,索引才会被使用。使用组合索引时遵循最左前缀集合;
5)、全文索引:使用FULLTEXT参数可以设置,全文索引只能创建在CHAR,VARCHAR,TEXT类型的字段上。主要作用是提高查询较大字符串类型的速度;只有MyISAM引擎支持该索引,MySQL默认引擎不支持;mysql5.7+

5、创建索引

CREATE [UNIQUE|FULLTEXT] INDEX 索引名 ON 表名(字段名[(长度)]							[ASC|DESC])

6、修改索引

ALTER TABLE 表名 ADD [UNIQUE|FULLTEXT] INDEX 索引名(字段名[(长度)][ASC|DESC])

7、删除索引

DROP INDEX 索引名 ON 表名