WithCoderWithCoderWithCoder

Mysql主键、普通索引、唯一索引和全文索引的区别

    在MYSQL中,索引功能有如下几个主要类型:PRIMARY(主键), INDEX(普通索引),UNIQUE(唯一索引),FULLTEXT(全文索引)。

    • PRIMARY 主键。 就是 唯一 且 不能为空。

    • INDEX 索引,普通的

    • UNIQUE 唯一索引,不允许有重复。

    • FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。

    不过,主键是一种约束,主键创建后一定包含一个唯一性索引,主键列在创建时,已经默认为非空值 + 唯一索引了。

    一般创建的是普通索引,和普通索引不同的是,唯一索引要求索引列的值不能重复。唯一性索引并不一定就是主键, 唯一性索引列允许空值,而主键列不允许为空值。

    而全文索引,通常用于在一篇文章中检索文本信息。如果文本内容较少,就一两行字的,普通的 INDEX 也可以。    

例如,要创建一个会员表
有下列字段:
会员ID INT
会员姓名 VARCHAR(10)
会员身份证号码 VARCHAR(18)
会员电话 VARCHAR(10)
会员住址 VARCHAR(50)
会员备注信息 TEXT
那么这个 会员ID,作为主键,需要使用 PRIMARY
会员姓名 如果要建索引的话,那么就是普通的 INDEX
会员身份证号码 如果要建索引的话,那么可以选择 UNIQUE (唯一的,不允许重复)
会员备注信息 , 如果需要建索引的话,可以选择 FULLTEXT,全文搜索。


欢迎分享交流,转载请注明出处:WithCoder » Mysql主键、普通索引、唯一索引和全文索引的区别