ホームページ > データベース > mysql チュートリアル > MySQL でインデックスを作成および削除するにはどうすればよいですか?

MySQL でインデックスを作成および削除するにはどうすればよいですか?

黄舟
リリース: 2017-08-02 10:16:37
オリジナル
3529 人が閲覧しました

mysql インデックス、mysql create インデックス、mysql delete インデックス

1. リレーショナル データベースでは、インデックスはテーブルに関連するデータベース構造であり、テーブルに対応する SQL ステートメントをより高速に実行できます。今日は、mysql でのインデックスの作成、クエリ、削除について簡単に説明します。

2. まず、テーブルを気軽に作成します。 SQL ステートメントは次のとおりです。

CREATE TABLE IF NOT EXISTS `student` (
 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',
 `name` varchar(64) NOT NULL DEFAULT '' COMMENT '姓名',
 `sex` tinyint(1) NOT NULL COMMENT '性别',
 `age` tinyint(2) NOT NULL COMMENT '年龄',
 `class` varchar(64) NOT NULL DEFAULT '' COMMENT '班级',
 PRIMARY KEY (`id`)
 ) ENGINE=MYISAM DEFAULT CHARSET=utf8 COMMENT='学生表';
ログイン後にコピー

MySQL でインデックスを作成および削除するにはどうすればよいですか?

3. テーブルを作成する SQL ステートメントには、主キー インデックスがあることがわかります。この時点で、テーブル内のインデックスを確認します: SHOW INDEX FROM `student`、結果は図に示すとおりです:

MySQL でインデックスを作成および削除するにはどうすればよいですか?


4また、一意のインデックスなどの他のインデックスも追加します。各生徒の名前を繰り返すことができないと仮定すると、名前フィールドに一意のインデックスを追加できます:

ALTER TABLE `student` ADD UNIQUE `stu_name` (`name`);
ログイン後にコピー

この時点で、テーブル内のインデックスを再度確認し、SHOW INDEX FROM `student` を実行すると、結果は次のようになります。図に示すように:

MySQL でインデックスを作成および削除するにはどうすればよいですか?


5. 次に、クラスに通常のインデックスを追加します:

ALTER TABLE `student` ADD INDEX `stu_class` (`class`);
ログイン後にコピー

テーブル内のインデックスを表示し、SHOW INDEX FROM `student` を実行すると、結果は次のようになります。図に示すように:

MySQL でインデックスを作成および削除するにはどうすればよいですか?


6. 次に、インデックスを削除し、一意のインデックスと通常のインデックスを削除します。

ALTER TABLE `student` DROP INDEX `stu_name`;
ALTER TABLE `student` DROP INDEX `stu_class`;
ログイン後にコピー

次に、テーブル内のインデックスを確認し、SHOW INDEX FROM `student` の場合、結果は次の図のようになります:

MySQL でインデックスを作成および削除するにはどうすればよいですか?

MySQL でインデックスを作成および削除するにはどうすればよいですか?

7。この時点で、主キー インデックスが 1 つだけ残っています。これを直接削除すると、エラーが報告されます。

ALTER TABLE `student` DROP PRIMARY KEY;
ログイン後にコピー
理由: 主キーインデックスに関連付けられた ID キーが自動的に増加するためです。


MySQL でインデックスを作成および削除するにはどうすればよいですか?

8. 最初に ID キーの自動増加をキャンセルする必要があります:

ALTER TABLE `student`  MODIFY `id`  int(10) NOT NULL COMMENT '学号'
ログイン後にコピー
もう一度実行します:

 ALTER TABLE `student` DROP PRIMARY KEY;
ログイン後にコピー

テーブル内のインデックスを表示します。SHOW INDEX FROM `student`、テーブルにはインデックスがありません

MySQL でインデックスを作成および削除するにはどうすればよいですか?

以上がMySQL でインデックスを作成および削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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