MySQL 各种索引区别 查看表索引 添加索引 删除索引

不念不忘少年蓝@ 2022-08-02 09:55 459阅读 0赞

各种索引区别 查看表索引 添加索引 删除索引

  • 1-索引介绍
    • 1.1-普通索引
    • 1.2-唯一索引
    • 1.3-主键索引
    • 1.4-全文索引
    • 1.5-组合索引
  • 2-查看表索引
  • 3-添加索引
    • 3.1-普通索引
    • 3.2-唯一索引
    • 3.3-主键索引
    • 3.4-全文索引
    • 3.5-组合索引
  • 4-删除索引

1-索引介绍

1.1-普通索引

  • 最基本的索引,没有任何限制。

1.2-唯一索引

  • 普通索引类似,不同的是:索引列的值必须唯一,但允许有空值。

1.3-主键索引

  • 是一种特殊的唯一索引,不允许有空值。

1.4-全文索引

  • 仅可用于MyISAM表,针对较大的数据生成全文索引很耗时、耗空间。

1.5-组合索引

  • 为了提高MySQL效率可建立组合索引,遵循最左前缀原则。

2-查看表索引

  1. show index from table_name;

3-添加索引

3.1-普通索引

  1. alter table table_name add index index_name (column_name)**

3.2-唯一索引

  1. alter table table_name add unique (column_name)**

3.3-主键索引

  1. alter table table_name add primary key (column_name)

3.4-全文索引

  1. alter table table_name add fulltext (column_name)

3.5-组合索引

  1. alter table table_name add index index_name (column_name1, column_name2, column_name3)

4-删除索引

  1. drop index index_name on table_name;
  2. # 或
  3. alter table table_name drop index index_name;
  4. # 或
  5. alter table table_name drop primary key;

备注:

  • 前两条语句中都删除了table_name中的索引index_name,而最后一条语句只在删除主键索引中使用,因为一个表中只能有一个主键索引,因此不需要指定索引名。如果没有创建主键索引,但是表中有一个或多个唯一索引,则删除第一个唯一索引
  • 如果表中删除某列,则索引会受影响。对于多列索引,删除其中某列,则该列会从索引中删除。如果删除索引组成的所有列,则整个索引被删除。

发表评论

表情:
评论列表 (有 0 条评论,459人围观)

还没有评论,来说两句吧...

相关阅读