Mysql
一、索引
1.什么是索引
在关系型数据库中,索引是一种可以加快数据检索的数据库结构。
索引的含义和特点:
●索引一旦被创建,将由数据库自动管理和维护。在更新数据表数据时,数据库会自动在索引上做出相应的修改。因此索引总是和表的内容保持一致。
●索引的优点除了可以提高数据的查询速度,还可以通过创建唯一性索引保证表中数据记录不重复。
2.索引的分类
根据索引列的内容,MySQL的索引可以分为以下几类:
●普通索引
普通索引是由KEY或INDEX定义的索引,它是MySQL中的基本索引类型,允许在定义索引的列中插入重复值和空值。该类型索引可以创建在任何数据类型中。
●唯一性索引和主键索引
唯一索引是由UNIQUE定义的索引,指索引列的值必须唯一,但允许有空值。如果是在多个列上建立的组合索引,则列值的组合值必须唯一。
●全文索引
全文索引是由FULLTEXT定义的索引,是指在定义索引的列上支持值的全文查找。它只能创建在CHAR、VARCHAR或TEXT类型的字段上。
●空间索引
空间索引是由SPATIAL定义的索引,是只能在空间数据类型(GEOMETRY、POINT、LINESTRING和POLYGON。)的列上建立索引。需要注意的是,创建空间索引的字段,必须将其声明为NOT NULL。
此外,根据索引列的数目MySQL的索引又可以分为:
●单列索