Memahami Jenis Indeks MySQL: PRIMER, UNIK, INDEX dan FULLTEXT
MySQL menyediakan beberapa jenis indeks yang meningkatkan prestasi pangkalan data. Artikel ini menerangkan perbezaan utama antara empat indeks yang biasa digunakan: UTAMA, UNIK, INDEX dan FULLTEKS.
Indeks UTAMA
Serupa dengan indeks UNIK, indeks UTAMA memastikan keunikan semua baris dalam indeks. Walau bagaimanapun, ia mempunyai ciri unik berikut:
- Hanya terdapat satu indeks PRIMER bagi setiap jadual.
- Ia biasanya dinamakan 'PRIMER' dan menyediakan cara utama untuk mengenal pasti baris.
- Ia hendaklah pada bilangan lajur terkecil yang mentakrifkan baris secara unik.
- Sesetengah sistem pangkalan data menyimpan data jadual dalam struktur B-tree indeks UTAMA.
Indeks UNIK
Indeks UNIK menguatkuasakan keunikan baris dalam lajur yang ditentukan. Ia:
- Menghalang nilai bukan NULL yang sama dalam berbilang baris.
- Membenarkan nilai NULL, yang berpotensi membenarkan berbilang baris dengan NULL menjadi sama.
- Boleh digunakan untuk sekatan data dengan menghalang pendua rekod.
INDEX (Bukan Unik)
INDEX asas atau jenis KEY merujuk kepada indeks bukan unik. Ia:
- Membenarkan nilai yang tidak berbeza dalam indeks.
- Tidak menguatkuasakan sebarang kekangan data.
- Digunakan semata-mata untuk akses dan pengambilan data yang lebih pantas.
TEKS PENUH Indeks
Tidak seperti jenis sebelumnya, indeks FULLTEXT dikhususkan untuk kefungsian carian teks penuh:
- Mengindeks kandungan teks penuh lajur, seperti rentetan.
- Memudahkan carian cekap menggunakan klausa MATCH() / AGAINST().
- Tidak ikut peraturan susunan lajur yang sama seperti jenis indeks lain.
Persamaan
Walaupun terdapat perbezaannya, semua jenis indeks ini berkongsi ciri berikut:
- Boleh mengandungi berbilang lajur.
- Memerlukan susunan lajur untuk memadankan kriteria pertanyaan, bermula dari paling kiri lajur.
Atas ialah kandungan terperinci Apakah Perbezaan Utama Antara Indeks PRIMER, UNIK, INDEX dan FULLTEXT dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!