查看是否有加索引:
show index from `basic_auth`;
MySQL之desc查看錶結構的詳細信息
desc `basic_auth` ;
在mysql中如果想要查看錶的定義的話;有如下方式可供選擇
1、show create table 語句:
show create table table_name;
2、desc table_name 語句:
create table person( id int not null auto_increment primary key, name varchar(8), index ix__person__name (name)); desc person; +-------+------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(8) | YES | MUL | NULL | | +-------+------------+------+-----+---------+----------------+
由這個例子可以看出:
Field:字段表示的是列名
Type:字段表示的是列的數據類型
Null :字段表示這個列是否能取空值
Key :在mysql中key 和index 是一樣的意思,這個Key列可能會看到有如下的值:PRI(主鍵)、MUL(普通的b-tree索引)、UNI(唯一索引)
Default: 列的默認值
Extra :其它信息
-
建立普通索引
這是最基本的索引,它沒有任何限制。
格式:
create table table_name
(
屬性名,數據類型【完整約束】,
屬性名,數據類型【完整約束】,
......
屬性名,數據類型【完整約束】,
index|key 索引名 (屬性名【(長度)】【asc|desc】)
);
-
建立唯一性索引
建立唯一性索引時,需要使用unique 參數進行約束,就是在建立普通索引的基礎上加上unique關鍵字。
-
建立全文索引
全文索引只能建立在char,varchar或者text類型的字段上。並且要注意的是MYSQL5.6版本,Innodb引擎纔開始對FUULTEXT索引支持。
-
建立多列索引
多列索引就是在多個字段上創建索引
例如下面創建表newtable3,在類型char(20)的name字段上和int類型的age字段上建立索引
-
查看索引
在實際使用索引的過程中,有時需要對錶的索引信息進行查詢,瞭解在表中建立的索引,
格式:
show index from tablename
-
6
刪除索引
創建索引之後,如果用戶不在使用該索引,可是刪除指定表的索引。因爲這些已經建立且不經常使用的索引一方面會佔用系統資源,一方面導致更新的速度下降。
格式:
drop index index_name on table_name;
如下面刪除newtable中的索引name_index 索引