집 >데이터 베이스 >MySQL 튜토리얼 >MySQL이 인덱스를 생성하는 방법에 대한 자세한 설명(사례)
사례: index_test 데이터베이스를 생성하고, 다음 표의 구조에 따라 index_test 데이터베이스에 test_table1, test_table2 두 개의 데이터 테이블을 생성하고, 연산 프로세스에 따라 데이터 테이블에 대한 기본 연산을 완료합니다.
(1) MySQL 데이터베이스에 로그인
(2) 데이터베이스 index_test 생성
(3) test_table1 테이블 생성
(4) test_table2 테이블 생성, 스토리지 엔진은 MyISAM
(5) alter table 문 사용 test_table2 테이블의 생성 필드를 생성하려면 ComDateIdx라는 일반 인덱스
(6) alter table 문을 사용하여 test_table2 테이블의 id 필드에 UniqIdx2라는 고유 인덱스를 추가하고 내림차순으로 정렬합니다.
(7) create 사용 이름, 중간 이름, 성의 세 필드에 대한 인덱스 MultiColidx2라는 결합 인덱스 생성
(8) create index를 사용하여 제목 필드에 FTidx라는 전체 텍스트 인덱스 생성
(9) alter table 문을 사용하여 고유한 인덱스를 삭제 test_table1 테이블의 Uniqidx라는 인덱스
(10) drop index 문을 사용하여 test_table2 테이블의 MultiColidx2라는 결합 인덱스를 삭제합니다. 몇 가지 참고 사항
(무료 학습 권장 사항:mysql 비디오 튜토리얼)
C:\Users\Hudie>mysql -h localhost -u root -p Enter password: *******
mysql> create database index_test;Query OK, 1 row affected (0.06 sec)mysql> use index_test;Database changed
mysql> create table test_table1 -> ( -> id int not null primary key auto_increment, -> name char(100) not null, -> address char(100) not null, -> description char(100) not null, -> unique index uniqidx(id), -> index MultiColidx(name(20),address(30) ), -> index Comidx(description(30)) -> );Query OK, 0 rows affected (0.11 sec)mysql> show create table test_table1 \G*************************** 1. row *************************** Table: test_table1Create Table: CREATE TABLE `test_table1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` char(100) NOT NULL, `address` char(100) NOT NULL, `description` char(100) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uniqidx` (`id`), KEY `MultiColidx` (`name`(20),`address`(30)), KEY `Comidx` (`description`(30))) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 row in set (0.06 sec)
mysql> create table test_table2 -> ( -> id int not null primary key auto_increment, -> firstname char(100) not null, -> middlename char(100) not null, -> lastname char(100) not null, -> birth date not null, -> title char(100) null -> )ENGINE=MyISAM;Query OK, 0 rows affected (0.07 sec)
mysql> alter table test_table2 add index ComDateidx(birth);Query OK, 0 rows affected (0.13 sec)Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table test_table2 add unique index Uniqidx(id);Query OK, 0 rows affected (0.11 sec)Records: 0 Duplicates: 0 Warnings: 0
mysql> create index MultiColidx2 on test_table2(firstname,middlename);Query OK, 0 rows affected (0.12 sec)Records: 0 Duplicates: 0 Warnings: 0
mysql> create fulltext index ftidx on test_table2(title);Query OK, 0 rows affected (0.13 sec)Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table test_table1 drop index uniqidx;Query OK, 0 rows affected (0.09 sec)Records: 0 Duplicates: 0 Warnings: 0
mysql> drop index MultiColidx2 on test_table2;Query OK, 0 rows affected (0.12 sec)Records: 0 Duplicates: 0 Warnings: 0
관련 무료 학습 권장 사항: mysql 데이터베이스(동영상)
위 내용은 MySQL이 인덱스를 생성하는 방법에 대한 자세한 설명(사례)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!