mysqlに一意のインデックスを追加する方法

WBOY
リリース: 2022-05-12 18:09:46
オリジナル
24003 人が閲覧しました

mysql では、「テーブル名 (フィールド名) に一意のインデックス インデックス名を作成する」ステートメントを使用して一意のインデックスを追加できます。一意のインデックスは通常のインデックスと似ていますが、唯一の違いは、一意のインデックスに追加される値は一意である必要があります。null 値も許可されます。結合インデックスの場合、列の値の組み合わせは一意である必要があります。

mysqlに一意のインデックスを追加する方法

このチュートリアルの動作環境: Windows10 システム、mysql8.0.22 バージョン、Dell G3 コンピューター。

mysql に一意のインデックスを追加する方法

create unique index 索引名称 on 表名(字段名称)
ログイン後にコピー

Mysql インデックスには約 5 種類があります:

  • 通常のインデックス (INDEX): 最も多くの種類があります。基本インデックス、なし 制限なし

  • 一意のインデックス (UNIQUE): 「通常のインデックス」と同様、違いはインデックス列の値が一意である必要があるが、null 値であることです。許可されています。

  • 主キー インデックス (PRIMARY): これは、NULL 値を許可しない特別な一意のインデックスです。

  • フル テキスト インデックス (FULLTEXT): MyISAM テーブルに使用できます。mysql5.6 以降の innodb テーブルにも使用できます。記事内のテキスト情報を取得するために使用されます。データが大きい場合、全文インデックスの生成には時間とスペースがかかります。

  • 結合 (結合) インデックス: mysql の効率をさらに向上させるために、「左端のプレフィックス」の原則に従って複合インデックスを確立できます。

ここでは一意のインデックスについて見ていきます。

前に、特別な一意のインデックスである主キー インデックスについて説明しました。この 2 つの違いは、主キー インデックスは NULL 値を持つことができないが、一意のインデックスは NULL 値を持つことができることです。

1: 基本的な使用法

1: 一意のインデックスは単一列または複数列にすることができます。作成ステートメントを見てみましょう:

# 创建单列唯一索引
alter table sc add unique (name);
# 创建多列唯一索引
alter table sc add unique key `name_score` (`name`,`score`);
ログイン後にコピー

2: 一意のインデックス ステートメントを削除します:

alter table sc drop index name;
ログイン後にコピー

ここにコード スニペットを挿入します

2: 一意のインデックスの役割

1: 最大の用途データベースに書き込まれるデータが一意の値であることを確認することです。

単一列の一意の値は、基本的に主キーです。

一般的に使用されるのは、複数列の一意のインデックスです。たとえば、ユーザーは現在の製品のうち 1 つのアイテムのみを購入できます。ユーザー ID 列と製品 ID 列を一意のインデックスとして設定します。これにより、ユーザーが繰り返し購入することを防ぐことができます。

推奨学習: mysql ビデオ チュートリアル

以上がmysqlに一意のインデックスを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート