インデックスの作成と削除
インデックスの作成は CREATE TABLE ステートメントで行うことも、CREATE INDEX または ALTER TABLE を単独で使用してテーブルにインデックスを追加することもできます。インデックスの削除は、ALTER TABLE または DROP INDEX ステートメントを使用して実行できます。
(1) ALTER TABLE ステートメントを使用してインデックスを作成します。
構文は次のとおりです:
alter table table_name addindexインデックス名 (column_list);
alter table table_name add unique (column_list);
alter table table_name addprimary key (column_list);
通常のインデックス、UNIQUEインデックスの3種類が含まれますおよび PRIMARY KEY インデックス インデックスを作成するための形式。 table_name はインデックスを追加するテーブルの名前です。複数の列がある場合は、それらをカンマで区切ります。インデックス名index_nameはオプションです。デフォルトでは、MySQLは最初のインデックス列に基づいて名前を割り当てます。さらに、ALTER TABLE を使用すると、単一のステートメントで複数のテーブルを変更できるため、複数のインデックスを同時に作成できます。
インデックスの作成例は次のとおりです:
mysql> use tpsc
DatabaseChanged
mysql> alter table tpsc add Index shili (tpmc) ;
クエリ OK、2 行が影響を受けました (0.08 秒)
レコード: 2 重複: 0警告: 0
(2) CREATE INDEX ステートメントを使用してテーブルにインデックスを追加します。
通常のインデックスとUNIQUEインデックスの両方を追加する機能。形式は次のとおりです:
createindexindex_nameontable_name(column_list);
create uniqueindexindex_nameontable_name(column_list)
注: table_name、index_name、column_list は ALTER TABLE ステートメントと同じ意味を持ちます。はオプションではありません。また、CREATE INDEX ステートメントを使用して PRIMARY KEY インデックスを作成することはできません。
(3) インデックスを削除します。
インデックスの削除は、ALTER TABLE または DROP INDEX ステートメントを使用して実行できます。 DROP INDEX は ALTER TABLE 内のステートメントとして処理でき、その形式は次のとおりです:
dropindexindex_nameontable_name;
altertabletable_namedropindexindex_name;
altertabletable_namedropprimarykey;
そのうち、前の 2 つは、ステートメントでは、table_name のインデックスindex_name が削除されます。最後のステートメントでは、テーブルには PRIMARY KEY インデックスを 1 つしか持てないため、PRIMARY KEY インデックスを削除するためにのみ使用されており、インデックス名を指定する必要はありません。 PRIMARY KEY インデックスが作成されていないが、テーブルに 1 つ以上の UNIQUE インデックスがある場合、MySQL は最初の UNIQUE インデックスを削除します。
テーブルから列が削除されると、インデックスが影響を受けます。複数列インデックスの場合、列の 1 つが削除されると、その列もインデックスから削除されます。インデックスを構成するすべての列を削除すると、インデックス全体が削除されます。
次のコードのようなインデックスを削除する操作:
mysql>tpsc でインデックス shili を削除します。
クエリ OK、影響を受ける 2 行 (0.08 秒)
レコード: 2 重複: 0 警告: 0
このステートメントは以前の「shili」の名前インデックスを作成しました。
上記は mysql チュートリアルです: mysql によるインデックス コンテンツの作成と削除 その他の関連記事については、PHP 中国語 Web サイト (m.sbmmt.com) に注目してください。