建立索引的优点:

这是因为,创建索引可以大大提高系统的性能。 
        第一、通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 
        第二、可以大大加快 数据的检索速度,这也是创建索引的最主要的原因。 
        第三、可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 
        第四、在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。 
       

建立索引的缺点:

 

 第一、创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。 

      

什么样的字段适合创建索引:

索引是建立在数据库表中的某些列的上面。因此,在创建索引的时候,应该仔细考虑在哪些列上可以创建索引,在哪些列上不能创建索引。

      一般来说,应该在这些列上创建索引,例如:

      第一、在经常需要搜索的列上,可以加快搜索的速度; 

      第二、在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构; 

      第三、在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度; 

      第四、在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的; 

      第五、在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间; 

     

1.PRIMARY KEY (主键索引)

MySQL> alter table table_name add primary key ( `column` )


2.UNIQUE 或 UNIQUE KEY (唯一索引)

mysql> alter table table_name add unique (`column`)


    3.FULLTEXT (全文索引)
     mysql> alter table table_name add fulltext (`column` )

    4.INDEX (普通索引)
    

5.多列索引 (聚簇索引)
     


      修改表中的索引: