ホームページ  >  記事  >  データベース  >  mysqlの主キーインデックスと通常のインデックスの違いは何ですか

mysqlの主キーインデックスと通常のインデックスの違いは何ですか

青灯夜游
青灯夜游オリジナル
2019-05-08 11:22:3821004ブラウズ

インデックスは、特定の値を持つレコードをすばやく検索するために使用されます。すべての MySQL インデックスは B ツリーの形式で保存されます。 MySQL では、通常のインデックス、一意のインデックス、主キー インデックス、フルテキスト インデックスなど、さまざまなインデックス タイプから選択できます。主キーインデックスと通常のインデックスの違いについては以下の記事で紹介していますので、ご参考になれば幸いです。

mysqlの主キーインデックスと通常のインデックスの違いは何ですか

通常のインデックス

通常のインデックスは最も基本的なインデックス タイプであり、一意性を持ちません。制限。通常のインデックスは次の方法で作成できます。

インデックスを作成します (例:

CREATE INDEX <索引的名字> ON tablename (列的列表);
)

テーブルを変更します (例:

ALTER TABLE tablename ADD INDEX [索引的名字] (列的列表);

) テーブルの作成時にインデックスを指定します。例:

CREATE TABLE tablename ( [...], INDEX [索引的名字] (列的列表) );

主キー インデックス

主キーは一意のインデックスですが、「PRIMARY KEY」として指定する必要があります。 」。

主キーは、通常、テーブルの作成時に

CREATE TABLE tablename ( [...], PRIMARY KEY (列的列表) );

のように指定されます。ただし、「ALTER TABLE tablename ADD PRIMARY KEY(列のリスト); "。各テーブルは主キーを 1 つだけ持つことができます。

違い

1. 通常のインデックスは制限のない最も基本的なインデックス タイプで、値は空にすることもできますが、クエリが高速化されるだけです。通常のインデックスは繰り返すことができ、テーブル内に複数の通常のインデックスが存在する可能性があります。

2. 主キー インデックスは特別な一意のインデックスです。テーブルには主キーを 1 つだけ持つことができ、NULL 値は許可されません。インデックス列内のすべての値は 1 回だけ出現できます。つまり、それらは一意である必要があります。簡単に言うと、主キー インデックスによりクエリが高速化され、列の値は一意であり (null を含むことはできません)、テーブル内に 1 つだけ存在します。

以上がmysqlの主キーインデックスと通常のインデックスの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。