mysql怎么增加唯一索引

mysql中,可以利用“create unique index 索引名稱 on 表名(字段名稱)”語句增加唯一索引;唯一索引與普通索引類似,唯一的區(qū)別是添加唯一索引的值必須是唯一的,允許有空值,若是組合索引,則列值的組合必須唯一。

mysql怎么增加唯一索引

本教程操作環(huán)境:windows10系統(tǒng)、mysql8.0.22版本、Dell G3電腦。

mysql怎么增加唯一索引

create?unique?index?索引名稱?on?表名(字段名稱)

Mysql索引大概有五種類型:

  • 普通索引(INDEX):最基本的索引,沒有任何限制

  • 唯一索引(UNIQUE):與”普通索引”類似,不同的就是:索引列的值必須唯一,但允許有空值。

  • 主鍵索引(PRIMARY):它 是一種特殊的唯一索引,不允許有空值。

  • 全文索引(FULLTEXT ):可用于 MyISAM 表,mysql5.6之后也可用于innodb表, 用于在一篇文章中,檢索文本信息的, 針對較大的數(shù)據(jù),生成全文索引很耗時(shí)和空間。

  • 聯(lián)合(組合)索引:為了更多的提高mysql效率可建立組合索引,遵循”最左前綴“原則。

這里我們來看下唯一索引。

之前我們看了主鍵索引,他是一種特殊的唯一索引,二者的區(qū)別是,主鍵索引不能有空值,但是唯一索引可以有空值。

一:基本使用

1:唯一索引可以是單列,也可以是多列,下面我們來看下創(chuàng)建語句:

#?創(chuàng)建單列唯一索引 alter?table?sc?add?unique?(name); #?創(chuàng)建多列唯一索引 alter?table?sc?add?unique?key?`name_score`?(`name`,`score`);

2:刪除唯一索引語句:

alter?table?sc?drop?index?name;

在這里插入代碼片

二:唯一索引作用

1:最大的所用就是確保寫入數(shù)據(jù)庫的數(shù)據(jù)是唯一值。

單列唯一值基本上就是主鍵。

常用的一般都是多列的唯一索引,比如:當(dāng)前商品,一個用戶只能購買一件。我們將用戶id及商品id列設(shè)置成唯一索引。那么就可以避免一個用戶出現(xiàn)重復(fù)購買的情況。

推薦學(xué)習(xí):mysql視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊6 分享