indeks mysql
Kelebihan indeks
Indeks kelihatan seperti nama yang sangat tinggi, secara terang-terangan, ia adalah jadual kandungan terkini buku kami.
Jika anda menggunakan Kamus Xinhua untuk mencari aksara Cina "張", tanpa menggunakan jadual kandungan, anda mungkin perlu pergi dari halaman pertama Kamus Xinhua ke halaman terakhir, yang mungkin mengambil masa sehingga dua jam. Lebih tebal kamus, lebih banyak masa yang anda perlukan. Kini anda menggunakan direktori untuk mencari aksara Cina "Zhang". untuk watak Cina Ini menunjukkan kepentingan jantina.
Indeks digunakan untuk mencari baris dengan cepat yang mempunyai nilai tertentu dalam lajur.
Tanpa menggunakan indeks, MySQL mesti bermula pada rekod 1 dan kemudian membaca keseluruhan jadual sehingga ia menemui baris yang berkaitan. Lebih besar meja, lebih banyak masa yang diperlukan. Jika lajur yang ditanya dalam jadual mempunyai indeks, MySQL boleh sampai ke titik di mana ia mencari bahagian tengah fail data tanpa perlu melihat semua data.
Sudah tentu, bukan mudah untuk mempunyai terlalu banyak indeks Semakin banyak indeks yang anda tulis, semakin perlahan pengubahsuaian itu. Kerana apabila menulis data yang diubah suai, indeks juga mesti diubah suai.
Jenis indeks MySQL
索引類型 | 功能說明 |
---|---|
普通索引 | 最基本的索引,它沒有任何限制 |
唯一索引 | 某一行企用了唯一索引則不準(zhǔn)許這一列的行數(shù)據(jù)中有重復(fù)的值。針對這一列的每一行數(shù)據(jù)都要求是唯一的 |
主鍵索引 | 它是一種特殊的唯一索引,不允許有空值。一般是在建表的時(shí)候同時(shí)創(chuàng)建主鍵索引,常用于用戶ID。類似于書中的頁碼 |
全文索引 | 對于需要全局搜索的數(shù)據(jù),進(jìn)行全文索引 |
Nota: Sila kaji bahagian berikut selepas melengkapkan 12.7.
Indeks Normal
類型 | 詳細(xì)說明 |
---|---|
基本語法 | alter table 表 add index(字段) |
示例 | ALTER TABLE money ADD INDEX(username ); |
示例解釋 | 為money表的username字段增加索引 |
Indeks Unik
類型 | 詳細(xì)說明 |
---|---|
基本語法 | alter table 表 add UNIQUE(字段) |
示例 | ALTER TABLE money ADD UNIQUE(email ); |
示例解釋 | 為money表的email字段增加唯一索引 |
Indeks teks penuh
類型 | 詳細(xì)說明 |
---|---|
基本語法 | alter table 表 add FULLTEXT(字段) |
示例 | ALTER TABLE money ADD FULLTEXT(content ); |
示例解釋 | 為money表的content字段增加唯一索引 |
Indeks kunci utama
類型 | 詳細(xì)說明 |
---|---|
基本語法 | alter table 表 add PRIMARY KEY(字段) |
示例 | ALTER TABLE money ADD PRIMARY KEY(id ); |
示例解釋 | 為money表的id字段增加主鍵索引 |
Anda juga boleh mengisytiharkan indeks semasa mencipta jadual
Apabila mencipta jadual, anda boleh tambah yang sepadan selepas kenyataan create table Jenis boleh digunakan untuk mengisytiharkan indeks:
KUNCI UTAMA (medan)
INDEX [nama indeks] (medan)
FULLTEXT [nama indeks] (medan)
UNIK[nama indeks] (medan)
Nota: Nama indeks dalam kurungan mewakili pilihan.
Contoh keseluruhan adalah seperti berikut:
BUAT JADUAL
test
(
id
INT BUKAN NULL,
username
VARCHAR(20) BUKAN NULL ,
password
INT BUKAN NULL,
content
INT BUKAN NULL,
KUNCI UTAMA (id
),
INDEKS pw (password
),
UNIK (username
),
FULLTEKS (content
)
) ENJIN = InnoDB;