MySQL資料庫操作(二) ----索引的操作
阿新 • • 發佈:2019-02-09
資料庫物件索引是一種有效組合資料的方式,通過索引物件,可以快速查詢到資料物件表中的特定記錄,是一種提高效能的常用方式。
索引是建立子啊資料庫表物件上,由表中的一個欄位或多個欄位生成的鍵組成,這些鍵儲存在資料結構(B樹或者雜湊表中),從而快速查詢與鍵值相關的欄位。
建立和檢視普通索引
建立表時建立普通索引
create table table_name(
屬性名1 資料型別,
屬性名2 資料型別,
......
index/key 索引名(屬性名1 asc|desc,屬性名2 asc|desc,...)
);
index或者key引數是用來指定欄位為索引,asc代表索引為升序排序,desc代表為降序排序。預設為升序排序。
舉個栗子:
create table t_dept(
deptno int,
dname varchar(20),
loc varchar(40),
index index_deptno(deptno)
);
在已經存在的表上建立普通索引
create index 索引名
on 表名(屬性名 asc|desc);
on用來指定所要建立索引的表名稱。
舉個栗子:
create index index_deptno
on t_dept(deptno);
注:這裡需要先建立t_dept;
通過alter table 建立普通索引
alter table table_name
add index|key 索引名(屬性名 asc|desc);
舉例:
alter table t_dept
add index index_deptno(deptno);
建立唯一索引
唯一索引,即是在建立索引時,限制索引的值必須是唯一的。
建立表時建立唯一索引
create table table_name(
屬性名 資料型別,
屬性名 資料型別,
......
屬性名 資料型別,
unique index|key 索引名(屬性名 asc|desc )
);
與建立普通索引相同,只需要加上unique。
在已經存在的表上建立唯一索引
create unique index 索引名
on 表名(屬性名 asc|desc);
通過SQL語句alter table建立唯一索引
alter table table_name
add unique index|key 索引名(屬性名 asc|desc);
建立和檢視全文索引
全文索引主要關聯在資料型別為char,varchar和text的欄位上。
建立表時建立全文索引
create table table_name (
屬性名 資料型別,
......
fulltext index|key 索引名(屬性名 asc|desc)
);
在已經存在的表上建立全文索引
create fulltext index 索引名
on 表名(屬性名 asc|desc);
通過SQL語句alter table建立全文索引
alter table table_name
add fulltext index|key 索引名(屬性名 asc|desc);
建立多列索引
建立表時建立多列索引
create table table_name(
屬性名1 資料型別,
屬性名2 資料型別,
......
index|key 索引名(屬性名1 asc|desc,屬性名2 asc|desc)
);
asc|desc可以省略,預設為增序排序。
在已經存在的表上建立多列索引
create index 索引名
on 表名(屬性名 asc|desc,屬性名 asc|desc);
通過SQL語句alter table建立多列索引
alter table table_name
add index|key 索引名(屬性名 asc|desc,屬性名 asc|desc);