1 index文のプレゼンテーションを作成します
create index
声明は、テーブルのインデックスを作成するために使用されます。データベースクエリの効率を改善するための指標の役割は、このアクションは、ユーザーに対して透過的ですが、MySQLのエンジンに及ぼす影響。
Syntax:
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
[index_type]
ON tbl_name (index_col_name,...)
[index_option]
[algorithm_option | lock_option] ...
index_col_name:
col_name [(length)] [ASC | DESC]
index_option:
KEY_BLOCK_SIZE [=] value
| index_type
| WITH PARSER parser_name
| COMMENT 'string'
| {VISIBLE | INVISIBLE}
index_type:
USING {BTREE | HASH}
algorithm_option:
ALGORITHM [=] {DEFAULT|INPLACE|COPY}
lock_option:
LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}
index_col_name
それは複数のフィールドが含まれている場合、フィールド(コンマ)の複数を含むことができるフィールドを含んでもよく、このインデックスは、複合名テーブルインデックスです。
unique index
インデックスの値は、代表的に複製することはできません。
fulltex index
あなただけ作成することが可能innodb
とmyisam
ストレージ・エンジンchar varchar text
分野で、
index
あなたは含ま作成することができNULL
、フィールドの値を、
key_block_size=value
でmyisam
テーブルストレージエンジン内の指定されたブロックサイズインデックスキー。
index_type
インデックスのタイプの代表を作成します。
comment 'string'
あなたは1024年のインデックスの代わりにコメントを追加することができます:
CREATE TABLE t1 (id INT);
CREATE INDEX id_index ON t1 (id) COMMENT 'MERGE_THRESHOLD=40';
2 viewステートメントアプリケーションを作成します
mysql> create index idx_st_sname on students(sname); ##创建普通索引
mysql> create index idx_st_union on students(sname,sex); ##创建复合索引
mysql> create unique index idx_st_sid on students(sid); ##创建唯一索引
mysql> insert into students values(1,‘eee’,0); ##插入重复数据失败
ERROR 1062 (23000): Duplicate entry '1' for key 'idx_st_sid'